python - Concat 未按预期工作

标签 python python-2.7 pandas

我有2个文件

  • 第一个包含数据(无列标题)
  • 第二个包含列标题

我想将这 2 个文件合并为 1 个文件。我的方法将数据推送到数据帧中并使用 concat 来获取文件结果集。

到目前为止我的代码

import pandas as pd
from xlrd import open_workbook

#contains mapping, Column present
#DataFileName   FolderLocation  ColumnFileName
#Data1           F:\Desktop      ColFile1
#Data2           F:\Desktop      ColFile2

filelocation = 'F:\Desktop\Mapping.xlsx'
wb = open_workbook(filelocation)
Separator = ','
items = []
for sheet in wb.sheets():
    number_of_rows = sheet.nrows
    number_of_columns = sheet.ncols
    for row in range(1, number_of_rows):
        for col in range(number_of_columns):
            ColumnFileName = sheet.cell(row,0).value
            Path = sheet.cell(row,1).value
            DataFileName = sheet.cell(row,2).value

            DataFileCompName = Path + "\\" + DataFileName +FileExtension
            ColumnFileCompName = Path + "\\" + ColumnFileName+ FileExtension
            HeaderDataFrame = pd.read_csv(ColumnFileCompName,sep=Separator)#,index_col=0)#,header=0)
            DataDataFrame = pd.read_csv(DataFileCompName,sep=Separator)#,header=None)

            CompleteDataFrame = pd.concat([HeaderDataFrame,DataDataFrame], ignore_index=True,axis=1)

现在,使用 concat 我希望结果集为

HeaderDataFrame
DataDataFrame

而我得到的结果是

HeaderDataFrame|DataDataFrame

最佳答案

您需要在代码中将轴从 axis=1 更改为 axis=0 ,因此

CompleteDataFrame = pd.concat([HeaderDataFrame,DataDataFrame], ignore_index=True,axis=0)

关于python - Concat 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41683395/

相关文章:

python - 并行 Python for 循环

python - 给定一个 Pandas 数据框,有没有一种简单的方法可以打印出生成它的命令?

python - 如何优化这个 numpy 二维排序数组的创建?

python - scipy.stats.pearsonr(x, y) 中的非相关检验是什么?

python-2.7 - Python - 尝试使用 numpy.mean 时出现 "cannot perform reduce with flexible type"

python - 如何在 Windows 上将 Python 2.7.6 升级到 Python 2.7.7

python - 如何合并两个数据框与重叠日期时间范围内的列

python - 有效地将数据从 CSV 读取到具有多个分隔符的数据框中

Python Appengine 在执行 app.yaml 之前运行某些代码

python - reportlab 中的多行(段落)页脚和页眉