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

Python 专栏收录该内容
0 篇文章 0 订阅

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) #调用函数

  • 0
    点赞
  • 0
    评论
  • 5
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

lingyu-youmo

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值