zoukankan      html  css  js  c++  java
  • python批量读取txt文件为DataFrame

        我们有时候会批量处理同一个文件夹下的文件,并且希望读取到一个文件里面便于我们计算操作。比方我有下图一系列的txt文件,我该如何把它们写入一个txt文件中并且读取为DataFrame格式呢?



    首先我们要用到glob模块,这个python内置的模块可以说是非常的好用。

    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:AAAASXQpython studydata 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()


  • 相关阅读:
    Filter 过滤器
    struts2 action接收请求参数和类型转换
    Struts2入门学习
    struts2请求参数校验
    IntelliJ IDEA 使用心得与常用快捷键
    关于动态代理详解
    web.xml文件详解
    关于mysql插入数据异常
    关于控制台输出 警告 log4j:WARN No appenders could be found for logger
    Hive load from hdfs 出错
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9411634.html
Copyright © 2011-2022 走看看