【发布时间】:2017-08-23 09:18:11
【问题描述】:
我有以下两个数据框,它们是从一个大数据集中提取出来的sn-ps:
df1:
date key number
2000 1 50
2001 1 40
2000 2 600
2001 2 650
df2:
key key2
1 A
2 B
3 C
我想将 key2 列添加到与“key”匹配的 df1 列中。结果应如下所示:
date key number key2
2000 1 50 A
2001 1 40 A
2000 2 600 B
2001 2 650 B
为此,我使用以下命令:
result = pd.merge(df1, df2, how="left", on="key")
但是,这也会将 key2“C”添加到我不想添加的数据集中。我只希望根据 df1 的键将变量 key2 附加到 df1。应删除 df2 中与 df1 中的键不匹配的信息。因此,我的结果数据框应该比 df1 多一列和确切的行数。
有谁知道为什么合并“左”在这里不起作用,因为如果我像这样运行代码,我的结果数据框有 1 列 - 根据需要 - 但也比 df1 多行,这是我不想要的。
【问题讨论】:
-
如果我运行你的代码,结果没有 key2 'C' 的列。