2017-11-28 1 views
-3

データをCSV形式で参照したいと考えています。私は私のテーブルと、特定の列を表示することができ、コードのこの部分ではCSVファイルを読み込むときに行をフィルタリングする方法

Prenom Nom Profession 
Djef Pink Cascadeur 
Win  Red Actor 
Max  Blue Prof 
DEEN Red fisherman 

with open("file.csv", "rb") as f: 
    reader = csv.reader(f,delimiter=';') 
    for row in reader: 
     print row` 

出力:そのために私はこれを使用しています。 しかし、私は提供したいと考え、例えば、REDに等しい第二の列のすべての要素条件などですべての列を表示する:

Prenom Nom Profession 
Win  Red Actor 
DEEN Red fisherman 

どのように私はこれを達成することができますか?

答えて

0

Pythonのテーブルを扱うためにpandasを使用します。

import pandas as pd 

df = pd.read_csv(file, sep=";") #change file to filepath 
output = df[df.Nom == 'Red'].to_csv(sep='\t',index=False) 
print(output) 

プリント:

Prenom Nom Profession 
Win  Red Actor 
DEEN Red fisherman 
+0

をテストしていませんが、あなたの答えをいただき、ありがとうございます。 – Dokpe

0

あなたが読ん行は、文字列の0から始まる配列である実際のコードに今

import io 

data = """\ 
Prenom;Nom;Profession 
Djef;Pink;Cascadeur 
Win;Red;Actor 
Max;Blue;Prof 
DEEN;Red;fisherman""" 

file = io.StringIO(data) 

はのは、あなたのファイルを再作成してみましょう。

with open("file.csv", "rb") as f: 
    reader = csv.reader(f,delimiter=';') 
    for row in reader: 
     if row[1]=="RED": 
      print row 

関連する問題