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()


  • 相关阅读:
    【题解】[湖南集训]谈笑风生
    【题解】[POI2011]ROT-Tree Rotations
    【题解】[ZJOI2019]语言
    【题解】[HEOI2012]采花
    【题解】[JSOI2009]计数问题
    【题解】[USACO17JAN]Promotion Counting P
    heketi简单安装配置使用
    kubernetes api
    skywalking简单安装配置使用
    《技术的正宗与野路子》
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9411634.html
Copyright © 2011-2022 走看看