Python 给定列标题和行中的值时的单元格值

Python 给定列标题和行中的值时的单元格值,python,excel,csv,lookup-tables,Python,Excel,Csv,Lookup Tables,我有一个excel文件/csv,它有列标题和行标题(第1行是所有标题,第A列是所有行标题)。我希望在提供列和行时使用dictreader返回(x,y)坐标的值 最终,我能够给出多个列和一行,它将为该行合并每个给定列中的值。但我将从小步骤开始,因为我目前甚至不能返回我想要的第一个值。以下是我的excel文件/CSV的一个小示例: PinName RF_Switch_TX1 RF_Switch_TX2 RF_Switch_TX3 RF_Switch_TX3_Scope1 RF_Sw

我有一个excel文件/csv,它有列标题和行标题(第1行是所有标题,第A列是所有行标题)。我希望在提供列和行时使用dictreader返回(x,y)坐标的值

最终,我能够给出多个列和一行,它将为该行合并每个给定列中的值。但我将从小步骤开始,因为我目前甚至不能返回我想要的第一个值。以下是我的excel文件/CSV的一个小示例:

PinName RF_Switch_TX1   RF_Switch_TX2   RF_Switch_TX3   RF_Switch_TX3_Scope1    RF_Switch_TX3_Scope2

DM_D_0  1255,1266,1311                                  1154,1105,  
DM_D_1  1256,1266,1311                                  1154,1105,
DQS                     1101,1161        1105                                   1153,1105
我如何构建一个函数,如果提供了管脚名称“DM_D_1”和列标题“RF_Switch_TX3_Scope1”,它将返回11541105

我希望只使用dictreader,但我需要构建一个迭代函数来搜索我的文件吗?

使用dictreader是一种可以接受的方法吗?(最初的问题提到了Python,但现在似乎不是。)我不确定这是否是熊猫最惯用的用法,但它似乎做了你想做的事情

数据

我把它放到一个CSV文件中

PinName,RF_Switch_TX1, RF_Switch_TX2,RF_Switch_TX3,RF_Switch_TX3_Scope1,RF_Switch_TX3_Scope2
DM_D_0,"1255,1266,1311",,,"1154,1105,",
DM_D_1,"1256,1266,1311",,,"1154,1105,",
DQS,,"1101,1161",1105,,"1153,1105"
一些代码

from pandas import read_csv

df = read_csv("/Users/igow/Desktop/so_data.csv")
df = df.set_index(['PinName'])

def get_value(row, col):
    return df[col][row]

print(get_value(col='RF_Switch_TX3_Scope1', row='DM_D_1'))

如果将数据放入CSV或至少正确指定分隔符,则可以执行以下操作:

  In [56]: q = StringIO('''PinName,RF_Switch_TX1, RF_Switch_TX2,RF_Switch_TX3,RF_Switch_TX3_Scope1,RF_Switch_TX3_Scope2
   ....: DM_D_0,"1255,1266,1311",,,"1154,1105,",
   ....: DM_D_1,"1256,1266,1311",,,"1154,1105,",
   ....: DQS,,"1101,1161",1105,,"1153,1105"''')

In [57]: df1 = pd.read_csv(q,)

In [58]: df1.loc[df1['PinName'] == 'DM_D_1']['RF_Switch_TX3_Scope1'].values[0]
Out[58]: '1154,1105,'

In [59]: