如何合并for循环中生成的多个Pandas DataFrame
合并多结构相同DataFrame解决方案
你已经把所有DataFrame存到my_dfs字典中,直接使用pandas内置的concat方法就能快速完成合并,下面是两种常用场景的实现:
场景1:按行堆叠(最常用,适合同结构数据合并)
方案A:保留数据来源标识
如果后续需要区分每行数据来自哪个原文件,可以新增一列存储对应的名称:
import pandas as pd merged_df = pd.concat( [df.assign(name=name) for name, df in my_dfs.items()], ignore_index=True )
方案B:直接合并不需要来源标识
merged_df = pd.concat(my_dfs.values(), ignore_index=True)
参数说明
ignore_index=True:重置合并后数据集的行索引,避免出现重复的索引值- 如果你需要横向按列拼接,只需要添加
axis=1参数即可
小提示
你原代码的名称列表有笔误:Name = ['A','B,'C','D']中'B缺少右引号,记得修改为'B'避免运行报错。
内容的提问来源于stack exchange,提问作者Kamikaze K
相关产品推荐
相关产品推荐

