如何在pandas中垂直合并数据集 解决pd.concat横向拼接错误问题
问题原因
pd.concat的axis参数设置错误:
axis=1代表按列方向(横向)拼接,会把每次循环生成的2列作为新列追加到结果中,因此会不断新增列、产生大量空值axis=0代表按行方向(纵向)堆叠,会自动按列名对齐合并,符合你需要的垂直合并需求
修正后代码
import pandas as pd df_master = pd.DataFrame() data = [] for i in range(1,3): # do something and return a df2 with 2 columns data.append(df2) # 修改axis参数为0即可 df_master = pd.concat(data, axis=0, ignore_index=True) df_master.head()
补充说明:新增
ignore_index=True参数可以重置合并后的DataFrame的行索引,避免保留原来每个df2的重复索引,如果你需要保留原始索引可以删除这个参数。
内容的提问来源于stack exchange,提问作者titu84hh
相关产品推荐
相关产品推荐

