如何将含7个DataFrame的列表合并为单张14列DataFrame?
合并多个DataFrame为单张DataFrame的解决方案
直接使用pandas的pd.concat()函数按列拼接即可,步骤如下:
基础代码示例
假设你的DataFrame列表名为df_list:
import pandas as pd # 按列拼接所有DataFrame merged_df = pd.concat(df_list, axis=1) # 验证结果维度(应为(1000, 14)) print(merged_df.shape)
注意事项
- 索引对齐问题:如果各DataFrame的索引不一致,拼接后会自动对齐索引,可能产生缺失值。若索引无实际意义,可先统一重置索引:
# 重置所有DataFrame的索引 df_list = [df.reset_index(drop=True) for df in df_list] # 再执行合并 merged_df = pd.concat(df_list, axis=1) - 重复列名处理:如果存在重复列名,拼接后会自动添加后缀(如
_x、_y)。也可通过keys参数给列名添加前缀区分来源:# 添加来源前缀 merged_df = pd.concat(df_list, axis=1, keys=[f'df_{i+1}' for i in range(len(df_list))]) # 可选:展平多层列名 merged_df.columns = [f'{prefix}_{col}' for prefix, col in merged_df.columns]
内容的提问来源于stack exchange,提问作者Bassi
相关产品推荐
相关产品推荐

