2017-05-28 26 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中的星號。我正在嘗試各種複雜的壓縮迭代器。謝謝! –

相關問題