我有这个简单的问题但由于某种原因我无法理解。我有这个df:
Name1 Name2 Value1 Value2
x z 1 4
y y 2 5
z x 3 6
我的目标是拉出Value1或Value2列中与Name1和Name2匹配的单个值。例如,我想得到:
v:Value1中的值,其中Name1 = x,Name2 = z,然后v = 1
w:Value2中的值,其中Name1 = z,Name2 = x,则w = 6
非常感谢!
答案 0 :(得分:2)
设置索引:
df = df.set_index(['Name1', 'Name2'])
然后使用loc:
df.loc[('x', 'z'), 'Value1']
Out: 1
df.loc[('z', 'x'), 'Value2']
Out: 6
答案 1 :(得分:1)
您可以使用query
df.query("Name1=='x' & Name2=='z'").Value1[0]
Out[792]: 1