我有2个文件
我想将这个2合并为1个文件。我的方法是将数据推送到数据框中,并使用concat获取文件结果集。
我的代码现在直到
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<div class="row">
<div class="first-class col-xs-9 col-md-7">.col-xs-9 .col-md-7</div>
<div class="col-xs-3 col-md-5">.col-xs-3 .col-md-5</div>
</div>
<div class="row">
<div class="col-xs-6 col-md-10">.col-xs-6 .col-md-10</div>
<div class="start-with-something-else col-xs-6 col-md-2">.col-xs-6 .col-md-2</div>
</div>
<div class="row">
<div class="so many classes
col-xs-6">.col-xs-6</div>
<div class="bootstrap spam helper classes
col-xs-6">.col-xs-6</div>
</div>
</div>
<p>If the javascript worked then the above column elements have a background of blue instead of red.</p>
现在,使用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)
而我得到的结果是
HeaderDataFrame
DataDataFrame
答案 0 :(得分:1)
您需要在代码中将轴从轴= 1更改为轴= 0,所以
CompleteDataFrame = pd.concat([HeaderDataFrame,DataDataFrame], ignore_index=True,axis=0)
答案 1 :(得分:0)
我不确定你想要如何组合它们,但通常只使用标题数据(我假设的一行)作为数据中的列标签,为此你不需要{{1 }}
您可以通过重命名以下列来向数据框添加标题:
concat
您只需将标题作为列标签列表,其顺序与数据框相同,当然它必须与您的列数具有相同数量的标签。
或者,您可以使用相应文件读取功能的df.columns = [label1, label2, label3, ...]
- 参数直接为您正在阅读的文件指定列标签,例如:使用names
:
read_csv()