遍历多个数据集没有结果

Iterating through several data sets yields no results

提问人:DJ_Fox 提问时间:6/23/2023 更新时间:6/23/2023 访问量:31

问:

import openpyxl
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl import Workbook
import pandas as pd
import numpy as np

def create_workbook(path):
    workbook = Workbook()
    workbook.save(path)

# Open Excel Workbook that contains all the requested kinases and ligands
create_workbook('Drug-Targets.xlsx')
wrkbk = openpyxl.load_workbook('Drug-Targets.xlsx')
sh = wrkbk.active

wrkbk2 = openpyxl.load_workbook('Drug Data.xlsx')
sh2 = wrkbk2.active

wrkbk3 = openpyxl.load_workbook('Drug Library.xlsx')
sh3 = wrkbk3.active

wrkbk4 = openpyxl.load_workbook('Kinase Data.xlsx')
sh4 = wrkbk4.active


for i in range(3, sh2.max_row+1):
    drug_name = sh2.cell(row=i, column=1).value
    pdb = sh2.cell(row=i, column=3).value
    for x in range(2, sh3.max_row+1):
        if drug_name == sh3.cell(row=x, column=1).value or pdb == sh3.cell(row=x, column=2):
            kinase_name = sh3.cell(row=x, column=5).value
            for z in range(2, sh4.max_row+1):
                if kinase_name == sh4.cell(row=z, column=1).value and pdb == sh4.cell(row=z, column=11).value:
                    kinase_group = sh4.cell(row=z, column=3).value
                    kinase_family = sh4.cell(row=z, column=2).value
                    pdb_kinase = sh4.cell(row=z, column=4).value
                    drug_name = sh3.cell(row=x, column=1).value
                    cell = sh.cell(row=i, column=1)
                    cell.value = kinase_group
                    cell = sh.cell(row=i, column=2)
                    cell.value = kinase_family
                    cell = sh.cell(row=i, column=3)
                    cell.value = kinase_name
                    cell = sh.cell(row=i, column=4)
                    cell.value = drug_name
                    cell = sh.cell(row=i, column=5)
                    cell.value = pdb
                    cell = sh.cell(row=i, column=6)
                    cell.value = pdb_kinase

wrkbk.save('Drug-Targets.xlsx')

该代码生成的结果没有最终的 if 语句,包括 and pdb_kinase 要求。但是,每个特定的激酶-pdb 组合都有一个我需要的唯一pdb_kinase ID。我尝试做两个单独的if语句,它产生了相同的结果。请指教。

python for if 语句 嵌套 套循环

评论

0赞 moken 6/29/2023
在没有主模块标签的情况下第二次问同样的问题有时会有所帮助,但不会改变代码的基本问题。

答: 暂无答案