重塑数据框架以提取特定结果

时间:2018-08-06 21:37:59

标签: python pandas dataframe

我有两个数据框:

import pandas as pd
d = {'0': [2154,799,1023,4724], '1': [27, 2981, 952,797],'2':[4905,569,4767,569]}
df1 = pd.DataFrame(data=d)

d={'PART_NO': ['J661-03982','661-08913', '922-8972','661-00352','661-06291',''], 'PART_NO_ENCODED': [2154,799,1023,27,569]}
df2 = pd.DataFrame(data=d)

我想为part_no中的每一行获取相应的df1,因此结果数据帧应如下所示:

d={'PART_NO': ['J661-03982','661-00352',''], 'PART_NO_ENCODED': [2154,27,4905]}
df3 = pd.DataFrame(data=d)

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以使用reindex(在set_index之后)

df2.set_index('PART_NO_ENCODED').reindex(df1.iloc[0,:]).reset_index().rename(columns={0:'PART_NO_ENCODED'})
Out[242]: 
   PART_NO_ENCODED     PART_NO
0             2154  J661-03982
1               27   661-00352
2             4905         NaN