我想根据来自另一个数据框的信息尝试选择正确的索引行和索引列。我在数据帧(df_one)中列出了正确的索引号['index_nums'],在同一行上的是[[names]],'John','Sam','Peter'等的名称。这些名称是另一个数据帧(df_two)中的列标题。我想从df_one中说,如果'index_nums'等于df_two中的索引行,并且'names'等于df_two中的列标题。将此特定值提取到df_one的新列中。
df_one:
['Index_nums']['Names']
3 Sam
4 John
5 Steve
df_two:
['John'] ['Sam'] ['Steve']
0 23.5 45.4 52.2
1 33.3 9.9 10.2
3 22.2 9.0 7.3
4 12.5 15.5 15.4
5 24.4 8.2 4.4
6 15.5 25.1 1.9
预期输出:
df_one:
['Index_nums'] ['Names'] ['new_col']
3 Sam 9.0
4 John 12.5
5 Steve 4.4
答案 0 :(得分:2)
您可以使用DataFrame.lookup
,直接将df_one
的列解包,以便将它们作为lookup
的参数来馈送,row_labels
和{分别为{1}}:
col_labels