pandas:合并/concat.join 两个 dfs
Posted
技术标签:
【中文标题】pandas:合并/concat.join 两个 dfs【英文标题】:pandas: merge/concat.join two dfs 【发布时间】:2017-01-20 23:55:27 【问题描述】:我有 2 个要合并/合并/加入的 dfs。
这里是df1:
item country Month Year
honda JP 2 16
sony GB 6 16
jazz JP 6 16
honda US 6 16
jazz JP 1 16
这里是df2:
item country pay
honda JP y
sony GB n
jazz JP y
honda US y
jazz JP n
这是我希望合并的样子:
item country pay Month Year
honda JP y 2 16
sony GB n 6 16
jazz JP y 6 16
honda US y 6 16
jazz JP n 1 16
我使用了df = df1.join(df2, how='outer')
,但它创建了重复项。
我想使用item
和country
列合并到pay
列中,如果这样有意义吗?
【问题讨论】:
【参考方案1】:我认为你需要concat
和set_index
在DataFrames
中:
print (pd.concat([df1.set_index(['item','country']),
df2.set_index(['item','country'])], axis=1).reset_index())
item country Month Year pay
0 honda JP 2 16 y
1 sony GB 6 16 n
2 jazz JP 6 16 y
3 honda US 6 16 y
4 jazz JP 1 16 n
【讨论】:
以上是关于pandas:合并/concat.join 两个 dfs的主要内容,如果未能解决你的问题,请参考以下文章
python-dataframe的合并(append, merge, concat, join)
JavaScript中push ,pop ,concat ,join方法
按 ID 合并两个 Excel 文件并合并具有相同名称的列(python、pandas)