python 合并多个txt文件到一个csv文件

import os
import pandas as pd
import numpy as np

#传入参数:file_dir-文件所在路径,ext-目标文件后缀
def file_list(file_dir,ext='.txt'):
    #将目标文件名保存为list
    L=list(filter(lambda filename: os.path.splitext(filename)[1] == ext,os.listdir(file_dir)))
    #初始化中间变量
    result=pd.DataFrame()
    tt=pd.DataFrame()
    #print(L)
    for i in L:
        #print(i)
        tdate=i[0:4] #取文件名前4位的日期值
        n=i.find('ym') #找到关键字’ym‘的index
        tag=i[n-1:n+1] #截取目标字符串
        f=pd.read_csv(i,header=None) #读入文件
        #定义拼接函数
        def con(x):
            return tdate+','+str(x)+','+tag
        a=f[0].apply(con) #应用拼接函数到数据框的列
        tt=pd.concat([result,a]) #结果整合
        result=tt #更新result
    tt.to_csv("rr.csv",index=False,header=False,encoding='GBK') #结果输出至csv文件
    return tt #屏幕输出,可注释

file_dir="/Users/ym/Documents/test" #定义目录路径
file_list(file_dir) #调用函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值