我有一个非常大的数据框,看起来像这样:
我想基于特定位置和列名提取单元格值。例如,对于位置2b,值为DE36。
例如,我列出了两个列表,分别包含所需的行和要提取的列
row_name =["2b", "87f"]
column_name=["NL984", 'DE36']
因此,要提取值NL984上2B的位置,和值DE36在87F的位置。
进行了循环并尝试了类似的方法:
df.iloc[df.position==row_name[i],column_name[i]])
但是我得到了错误:
TypeError:“列表”对象不能解释为整数
还有其他可能将列表参数传递给.iloc吗?
谢谢您的帮助和建议。
使用DataFrame.loc
由标签选择,所以position
列被转换到指数:
row_name =["2b", "87f"]
column_name=["NL98", 'DE36']
df = df.set_index('position').loc[row_name, column_name]
print (df)
NL98 DE36
position
2b 0 8
87f 7 16
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句