Python pandas数据框将2行合并为1行
Posted
技术标签:
【中文标题】Python pandas数据框将2行合并为1行【英文标题】:Python pandas dataframe merge 2 rows into one with keys 【发布时间】:2021-02-08 16:36:20 【问题描述】:我有 2 个数据框,每个都有一行,具有相同的列:
df1 = feat_1 feat_2 ... feat_n a b c d ... z
A B N 1 2 3 4 9
df2 = feat_1 feat_2 ... feat_n a b c d ... z
A B N 5 6 1 8 3
feat_1.. feat_n
与 2 行相同,其他列应连接起来,以便新行为:
new_df = feat_1 feat_2 ... feat_n a_1 a_2 b_1 b_2 c_1 c_2 d_1 d_2 ... z_1 z_2
A B N 1 5 2 6 3 1 4 8 9 3
最好的方法是什么?
【问题讨论】:
【参考方案1】:只需使用合并命令:
new_df = pd.merge(df1, df2, how="inner", on =["feat_1", 'feat_2', 'feat_n'], suffixes=('_1','_2'))
输入:
df1
feat_1 feat_2 feat_n a b
0 A B N 1 2
df2
feat_1 feat_2 feat_n a b
0 A B N 3 4
代码:
new_df = pd.merge(df1, df2, how="inner", on =["feat_1", 'feat_2', 'feat_n'], suffixes=('_1','_2'))
打印:
feat_1 feat_2 feat_n a_1 b_1 a_2 b_2
0 A B N 1 2 3 4
【讨论】:
以上是关于Python pandas数据框将2行合并为1行的主要内容,如果未能解决你的问题,请参考以下文章
python pandas合并数据 按列合并数据 按行合并数据 超简单