Python批量读取TXT文件并转换为DataFrame的方法

林舟
林舟
发布时间:2026-10-13| 6人浏览过
原创

本文介绍利用Python的glob模块批量获取文件夹下的TXT文件列表,并通过编码处理和合并操作将所有内容写入单一文件,最终使用Pandas读取为DataFrame格式进行后续计算分析。

在处理数据时,我们常遇到需要批量处理同一文件夹内多个文件的情况,并希望将这些文件的内容整合到一个文件中以便进行后续的计算和操作。例如,面对一系列如截图所示的txt文件,我们需要找到一种方法将它们合并写入一个txt文件,并进一步读取为DataFrame格式。

实现这一目标的第一步是使用Python内置的glob模块,该模块在处理文件路径匹配方面非常高效且实用。

glob.glob('*.txt') 

执行相关操作后,我们将获得如下结果展示:

最终生成的all.txt文件包含了所有处理后的内容。从返回结果可以看出,这是一个包含txt文件名称的列表。需要注意的是,如果指定文件夹下仅包含txt文件,使用os.listdir()函数也能得到相同的结果列表。

在读取文件时,关键在于注意txt文件的编码格式(可通过Notepad++等编辑器查看)以及数据之间的间隔符形式。完整的实现代码如下:

import os
import pandas
import codecs
import glob
import pandas as pd
os.getcwd()
os.chdir('D:\AAAASXQ\python study\data preprocessing')
def txtcombine():
 
 files = glob.glob('*.txt')
 
 all = codecs.open('all.txt','a')
 
 for filename in flist: 
 print(filename) 
 fopen=codecs.open(filename,'r',encoding='utf-8') 
 lines=[] 
 lines=fopen.readlines() 
 fopen.close() 
 i=0 
 for line in lines: 
  for x in line: 
  all.write(x)
 #读取为DataFrame格式
 all1 = pd.read_csv('all.txt',sep=' ',encoding='GB2312')
 #保存为csv格式
 all1.to_csv('all.csv',encoding='GB2312')
 
if __name__ == '__main__': 
 txtcombine()

以上即为Python批量读取txt文件并转换为DataFrame的完整方法分享,希望能为读者提供参考,欢迎支持本站获取更多技术内容。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。