我有一个关于合并4个数据帧的问题 例如,我有4个数据帧,如下所示:
print(df1)
SET I Violations
Rule 1 1
Rule 2 1
Rule 3 6
print(df2)
SET II Violations
Rule 1 2
Rule 2 3
Rule 3 6
print(df3)
SET III Violations
Rule 1 2
Rule 2 4
Rule 3 8
print(df4)
SET IV Violations
Rule 1 2
Rule 2 5
Rule 3 8
我的预期产出:
SET I Violations
Rule 1 1
Rule 2 1
Rule 3 6
SET II Violations
Rule 1 2
Rule 2 3
Rule 3 6
SET III Violations
Rule 1 2
Rule 2 4
Rule 3 8
SET IV Violations
Rule 1 2
Rule 2 5
Rule 3 8
我现在得到的结果是:
(一)
SET I SET II SET III SET IV Violations
Rule 1 1
Rule 2 1
Rule 3 6
Rule 1 2
Rule 2 3
Rule 3 6
Rule 1 2
Rule 2 4
Rule 3 8
Rule 1 2
Rule 2 5
Rule 3 8
使用的命令:
pandas.concat([df1,df2,df3,df4],axis=0,ignore_index=True)
(二)
Rule 1 1 Rule 1 2 Rule 1 2 Rule 1 2
Rule 2 1 Rule 2 3 Rule 2 4 Rule 2 5
Rule 3 6 Rule 3 6 Rule 3 8 Rule 3 8
使用的命令:
pandas.concat([df1,df2,df3,df4],axis=1,ignore_index=True)
请帮我做上面的事
得到这个输出的原因是每个
SET
列的列名不同。在使用pd.concat
之前,必须协调这些名称。另外,在pd.concat
中,您使用了错误的axis
。你知道吗由此产生:
如果需要将列标题作为最终} ,然后在使用^{} 之前将其调回^{} :
DataFrame
中的行值和集合之间的空行,则可以尝试transposing、^{否则使用:
编辑
要输出到不带索引的excel工作簿,请使用^{} :
编辑2:
要添加
sum
冲突,列表理解不再是可行的选择。这一次我们将使用for
循环,将结果附加到列表中,并concat
将它们放在末尾:相关问题 更多 >
编程相关推荐