按列名查找

Lookup by column name

请问如何使用一列 (X) 通过另一个数据框 (df_2) 的列标题查找值?

例如:

df_1 = pd.DataFrame({'X' : [ 1,  2,  1,  1,  1,  2,  1,  2,  2,  1]})

df_2 = pd.DataFrame({'1' : ['a','b','c','d','e','f','g','h','i','j'],
                     '2' : ['b','c','d','e','f','g','h','i','j','a']})

我的目标是:

                             a   c   c   d   e   g   g   i   j   j

我试过了:

for index, row in df_1.iterrows():
    df_1['Y'] = df_2[df_1['X'][index]]

但是我得到了:

KeyError: 1

使用 lookup 和转换列 X 进行字符串化,感谢@Zero:

a = df_2.lookup(df_2.index, df_1.X.astype(str))
print (a)
['a' 'c' 'c' 'd' 'e' 'g' 'g' 'i' 'j' 'j']