2017-05-28 24 views
1

我想从每个文本文件自动创建的列表转置数据。每个文本文件都有自己的listsR列表版本。然后我将这些列表放入另一个列表中,listlist,这样我就可以管理列表的列表。我知道如何使用声明列表来完成此操作,但是此代码需要灵活地使用任意数量的文本文件,对列表进行转置,并从所有列表中获取每个索引的平均值。希望可以用来从文本文件创建基线。转换自动创建的列表中的数据

import os 
import csv 
import numpy as np 

os.chdir('////Users////thomaswolff////Desktop////baseline2') 

def listNew(): 
    listlist = [] 
    for data in os.listdir(os.getcwd()): 
     if data.endswith('.TXT') and 'baseline' in data: 
      with open(data,'rU') as file: 
       listsR = [[] for i in xrange(0)] 
       for row in csv.DictReader(file): 
        listsR.append(float(row[' IRI R e'])) 
       listlist.append(listsR) 

这适用于将数据放入列表清单,但我需要根据索引转置数据。因此listlist[0:][0]将成为listlist内每个列表的第一个索引。我使用的数据的文本文件可以在这里使用baseline.txt文件中找到在Github

正如你可以从这个code I've written in the past看,我知道如何做到这一点使用申报名单,但这是不同的。

回答

2

要转listlist可以使用zip()

list_list_transpose = zip(*listlist) 
+1

哇多数民众赞成我需要?我只是错过了zip中的星号。我正在尝试各种复杂的压缩迭代器。谢谢! –

相关问题