【发布时间】:2017-04-29 08:33:20
【问题描述】:
我有两个要合并的数据框。
数据框 A:
col1 col2 sub grade
0 1 34.32 x a
1 1 34.32 x b
2 1 34.33 y c
3 2 10.14 z b
4 3 33.01 z a
数据框 B:
col1 col2 group ID
0 1 34.32 t z
1 1 54.32 s w
2 1 34.33 r z
3 2 10.14 q z
4 3 33.01 q e
我想合并 col1 和 col2。我一直 pd.merge 使用以下语法:
pd.merge(A, B, how = 'outer', on = ['col1', 'col2'])
但是,我认为我在加入 col2 的浮点值时遇到了问题,因为很多行都被删除了。有没有办法使用 np.isclose 来匹配 col2 的值?当我在任一数据框中引用 col2 的特定值的索引时,该值的小数位数比数据框中显示的多得多。
我希望结果是:
col1 col2 sub grade group ID
0 1 34.32 x a t z
1 1 34.32 x b s w
2 1 54.32 s w NaN NaN
3 1 34.33 y c r z
4 2 10.14 z b q z
5 3 33.01 z a q e
【问题讨论】:
-
显示预期结果的外观
-
我已经编辑了帖子以反映所需的输出。
-
@Megan 在您的加入中,您删除了一些行。检查我关于如何基于两列合并的答案。您可以在合并后应用附加逻辑。
-
@MohammadYusufGhazi 我编辑了帖子以添加我之前错过的列,但我不确定您在合并后应用额外逻辑是什么意思。