Pandas python合并多个文件文本

Posted

技术标签:

【中文标题】Pandas python合并多个文件文本【英文标题】:Pandas python merge multiple file text 【发布时间】:2019-01-28 07:49:09 【问题描述】:

我有 2 个文件文本: 文件 1.txt

abc
fdg
erg

file2.txt

pot
ezr
fds

我制作了一个包含 2 列的 csv 文件

columns = ['first','second']
my_df  = pd.DataFrame(columns = columns)

我不知道如何在列上添加文件 txt

我想要

   first   second
0   abc     pot
1   fdg     ezr
2   erg     fds

我尝试使用 loc 或 append,但我的结果很糟糕。 我不知道如何将文件文本中的项目放在我的 df 上的好位置。 你能帮我吗?

【问题讨论】:

【参考方案1】:

一个好的可扩展解决方案是从文件路径列表中读取文件,然后将它们沿轴 1 连接在一起。 然后就可以使用.to_csv方法输出你需要的文件了。

files = ['file1.txt', 'file2.txt']
frames = []

for file in files:
    frames.append(pd.read_csv(file))

df = pd.concat(frames, axis=1)
df.to_csv('output.txt', sep='\t')

【讨论】:

【参考方案2】:

使用read_csv和参数names,如果没有csv头,默认分隔符是,,如果需要的话改变它:

df1 = pd.read_csv('file1.txt', sep=',', names=['first'])
df2 = pd.read_csv('file2.txt', sep=',', names=['second'])

然后concat他们一起:

df = pd.concat([df1, df2], axis=1)

【讨论】:

@sapiron - 欢迎您!如果我的回答有帮助,请不要忘记 accept 它 - 单击答案旁边的复选标记,将其从灰色切换为已填充。谢谢。

以上是关于Pandas python合并多个文件文本的主要内容,如果未能解决你的问题,请参考以下文章

如何将多个excel文件合并?

如何使用 Python Pandas 合并多个 CSV 文件

Pandas python合并多个文件文本

Python使用pandas读取两个或者多个excel文件(xlsx)并进行数据连接(join)合并两个或者多个excel的信息

如何使用 pandas 模块合并(即“concat”)100 多个 .csv 文件?

python--pandas合并与连接