2016-09-27 45 views
-2

是否有eny替代方案比製作多個for循環?通過CSV從Excel文件中過濾數據

我有一個Excel文件:

|col1|col2|col3| 
1  x y 
2  s r 
3  o o 

我想要的輸出是這樣的:當第一列參數等於從第3列來自同一行1,打印參數。

import csv 


reader = csv.reader(open("alerts.csv"), delimiter=',') 

rows=[] 
for row in reader: 
    rows.append(row) 
for i in row: 
    x"i"?=row[i].split(";") 

我試圖找出一個功能,這將使分割信息的形式row[i]但不會工作,我覺得另一個列表。

回答

0
import pandas as pd 
reader = pd.read_csv("alerts.csv") 
print reader[['col1','col3']].loc[reader['col1'] == 1] 
+0

雖然這個代碼片斷可以解決的問題,[包括解釋(http://meta.stackexchange.com/questions/114762/explaining-entirely-基於代碼的答案)確實有助於提高帖子的質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。 –

+0

http://stackoverflow.com/users/6019417/j-chomel - 我會繼續向前看 – Poonam

0

所以我有不同的想法排序一切出不同的名單。

import csv 


reader = csv.reader(open("alerts.csv"), delimiter=',') 

rows=[] 
for row in reader: 
    rows.append(row) 

num_lists=int(len(rows)) 


lists = [] 
for p in range(num_lists): 
     lists.append([]) 


for i in rows: 
    lists[i][i]=row[i].split(";") 

print (lists[0][0]) 

,但似乎不起作用:<