Mat*_*pow 2 python dataframe pandas
我有两个表,我想用一个 id 列将一个表映射到另一个表。这两个表的 ID 大小不同。如果未找到 id,则列结果为 n/a。
表A
id type
2231 C
1213 A
1241 C
Run Code Online (Sandbox Code Playgroud)
表B
id other columns
2232 X
1213 Y
1233 I
Run Code Online (Sandbox Code Playgroud)
目标是映射表 A 中的 id 值并在表 B 中添加一个附加列。
理想桌
id other columns type
2232 X n/a
1213 Y A
1233 I n/a
Run Code Online (Sandbox Code Playgroud)
我厌倦了从表 A 中找到所有的 A 型。
typeA = df_A.id.loc[df_A.type == 'A']).tolist()
df_B.type = df_B.loc[df_B.isin(typeA)]
...
Run Code Online (Sandbox Code Playgroud)
我想通过 ids 合并两个表,但它们有不同的 id 大小,也许也有不同的 ids。有没有更有效的方法来做到这一点?感谢您的时间。
您可以使用地图
dfB['type'] = dfB.id.map(dfA.set_index('id').type)
id other columns type
0 2232 X NaN
1 1213 Y A
2 1233 I NaN
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
327 次 |
| 最近记录: |