gui_xuan 2020-04-01 11:36 采纳率: 50%
浏览 2621
已采纳

文件夹下txt批量提取列并处理

新手求教,处理数据时使用(急),在网上搜索并尝试无果,请问如何通过python或bat实现以下目标:
1.对文件夹下的所有txt文件批量提取某几列数据(不相邻),并分别放入与原文件名对应的txt内(文本名为“原文本名+tm”);
2.对提取后的txt中某列数据进行运算:原数据×0.1;及特征数字数据替换;

以一个txt为例描述:
如图示,提取第6、7、8、10列数据至新的txt文本,文本名为50136tn;对第10列数据进行“×0.1”运算,并将32766数值替换为99999。
图片说明

不胜感激!

  • 写回答

4条回答 默认 最新

  • CarlGao4 2020-04-01 17:39
    关注

    首先将数据每行的分隔符都换成单空格
    程序自带将多空格变为单空格

    import os
    import glob
    os.chdir('存储数据的目录(绝对路径)')
    txt = glob.glob('*.txt')
    for i in txt:
        f = open(i)
        res = ''
        data = f.read()
        data = data.replace('  ',' ')
        for j in data.split('\n'):
            k = j.split(' ')
            k[9] = str(double(k[9])/10)# 第十列,所以要将索引减一为九的项目处理
            for l in range(len(k)):
                if k[l] == '32766':
                    k[l] = '99999'
            res += ' '.join(k) + '\n'
        resf = open(i[:-4]+'tm.txt', mode='wt')
        resf.write(res)
        f.close()
        resf.close()
    

    望采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择