2017-01-13 14 views
-2
People  OS  Games Owned 
Anthony Windows  120 
Alissa Windows  70 
Jordan Windows  20 
Khan  Mac   47 
Benny  Mac   23 
Anastasia Linux  16 
McCurdy  Linux  10 

私は20種類以上のゲームを所有している人を除外し、Mac OSシステムを持っていないのですか?私はそれをPythonスクリプトを介して行う必要があり、実行すると、テキストファイルなどのような別のファイルにデータを出力します。ありがとう!Python経由でCSVから特定のデータをフィルタリングする方法は?

答えて

1

は、ここで要求されるようにテキストファイル(CSV)にフィルタリングされた出力を書き込み、純粋なPythonでソリューションです:次のように

コードは基本的にあります。

import csv 

with open('games.csv', 'rb') as csvfile: 
    # handle header line, save it for writing to output file 
    header = next(csvfile).strip("\n").split(",") 
    reader = csv.reader(csvfile) 
    results = filter(lambda row: row[1] != 'Mac' and int(row[2]) > 20, reader) 

with open('output.csv', 'wb') as outfile: 
    writer = csv.writer(outfile) 
    writer.writerow(header) 
    for result in results: 
     writer.writerow(result) 
0

私はパンダのライブラリを使用することをお勧めします。

import pandas as pd 

data = pd.read_csv('put in your csv filename here') 
# Filter the data accordingly. 
data = data[data['Games Owned'] > 20] 
data = data[data['OS'] == 'Mac'] 
+0

ありがとうございました! – SkytechCEO

関連する問題