繁体   English   中英

分别对每一列执行查找 Python Pandas

[英]Perform a lookup for each column individually Python Pandas

对于 dataframe 我想对每一列执行查找并将结果放在相邻列中。 id_df 包含 ID,如下所示:

            Col1           Col2  ...               Col160                 Col161
0          4328.0        4561.0  ...                NaN                   5828.0
1          3587.0        4328.0  ...                NaN                  20572.0
2          4454.0        1702.0  ...                NaN                    683.0

lookup_df 还包含我感兴趣的 ID 和值。lookup_df 如下所示:

    ID       Value
0   3587    3.0650
1   4454    2.9000
2   5       2.8450
3   8       2.8750
4   11      3.1000
5   13      3.1600
6   16      2.4450
7   18      3.0700
8   20      2.7950
9   23      3.0500
10   25      3.2250

我想得到以下 Dataframe df3:

           Col1ID        Col1 Value   ...               Col161 ID             Col161 Value
0          4328.0        2.4450       ...                5828.0                   3.1600
1          3587.0        3.2250       ...                20572.0                  3.0650
2          4454.0        3.0500       ...                 683.0                   3.1600

因为我是 excel 用户,所以我想使用 function '合并',但我不知道如何使用多列来完成。

谢谢!

使用map

m = lookup_df.set_index('ID')['Value']

result = pd.DataFrame()
for col in id_df.columns:
    result[col + '_ID'] = df[col]
    result[col + '_Value'] = df[col].map(m)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM