您的位置:首页 > 其它

选择一个文件夹下所有txt文件的几列数据

2017-03-28 13:56 316 查看
有时我们会遇到这样的业务需求,比如我们有很多数据文件,里面有很多数据项,一列表示一个数据项,并且不同文件数据项的排列顺序也是随机的。但是我们只需用到其中的几列数据,并且我们需要我们用到的几列数据按照既定的顺序排列,如下图:



这是一个txt文件,里面有9列,但是我只需要其中的DEPTH,AZIM,DEV三列,对于这样的需求,如果有几百个这样的文件,就必须编程来实现了,下面是源代码:

import os
import pandas as pd
import numpy as np

def sortList():

  #需要提取的几列数据的索引值
  states = ['DEPTH', 'AZIM', 'DEV']
 
  #输入文件夹,也就是需要处理文件所在文件夹
  path = u"E:\input"

  #输出文件夹
  output = "E:\output"

  #获得文件夹的路径,文件夹中的文件夹名,文件夹中的文件名
  for (dirpath, dirname, filenames) in os.walk(path):
    for filename in filenames:
      #获得文件夹下所有文件的绝对路径
      filelist = os.path.join(dirpath, filename)
      print filelist

      #把文件读为DataFrame数据
      data = pd.read_fwf(filelist)

      #选取其中的几列
      result = data[states]

      #把选取的数据按照原有文件名存在指定文件夹下
      result.to_csv(output + "//" + filename, index=False, sep='\t')

sortList()

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐