根据其他数据行中的行和列信息索引数据帧

时间:2019-05-08 13:00:28

标签: python pandas

我想根据来自另一个数据框的信息尝试选择正确的索引行和索引列。我在数据帧(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

1 个答案:

答案 0 :(得分:2)

您可以使用DataFrame.lookup,直接将df_one的列解包,以便将它们作为lookup的参数来馈送,row_labels和{分别为{1}}:

col_labels