使用panda.concat合并两个csv文件



我试图使用pandas.concat()合并两个csv文件。这些文件有相同的行和列结构,我想合并一个接一个沿着行。例如,第一个csv文件('ex1.csv')是

Ex1,Ex1
Ex1,Ex1
Ex1,Ex1
Ex1,Ex1

,第二个('ex2.csv')是

Ex2,Ex2
Ex2,Ex2
Ex2,Ex2
Ex2,Ex2

我想要下面的输出('merged.csv')

Ex1,Ex1
Ex1,Ex1
Ex1,Ex1
Ex1,Ex1
Ex2,Ex2
Ex2,Ex2
Ex2,Ex2
Ex2,Ex2

这应该是非常简单的…我已经遵循了pandas.concat()的文档和互联网上的几个教程,但我仍然没有得到我想要的。我已经将csv文件保存在脚本所在的目录中。这是我的代码:

import os
import pandas as pd
import glob
joined_files = os.path.join(".", "*.csv")
joined_list = glob.glob(joined_files)
li=[]
for filename in joined_list:
df = pd.read_csv(filename, index_col=None, header=0,sep=',')
li.append(df)
frame = pd.concat(li, axis=0, ignore_index=True)
print(frame)

返回以下输出

>>> print(frame)
Ex1 Ex1.1  Ex2 Ex2.1
0  Ex1   Ex1  NaN   NaN
1  Ex1   Ex1  NaN   NaN
2  Ex1   Ex1  NaN   NaN
3  NaN   NaN  Ex2   Ex2
4  NaN   NaN  Ex2   Ex2
5  NaN   NaN  Ex2   Ex2

我的代码有什么问题?由于

假设列名相同…

dfnew = pd.concat([df1,df2]).reset_index(drop=true)

相关内容

  • 没有找到相关文章

最新更新