ああ、私はいくつかの大きな CSV ファイルをフィルタリングする Python スクリプトを書いています。
基準を満たす行のみを保持したい。
私の入力は、次の形式の CSV ファイルです
Locus Total_Depth Average_Depth_sample Depth_for_17 chr1:6484996 1030 1030 1030 chr1:6484997 14 14 14 chr1:6484998 0 0 0
Total_Depth が 0 の行を返したい。
私はこの回答に従ってデータを読んでいます。しかし、行を解析して私の条件に合った行を引き出そうとして立ち往生しています。
これが私がこれまでに持っているコードです:
import csv
f = open("file path", 'rb')
reader = csv.reader(f) #reader object which iterates over a csv file(f)
headers = reader.next() #assign the first row to the headers variable
column = {} #list of columns
for h in headers: #for each header
column[h] = []
for row in reader: #for each row in the reader object
for h, v in zip(headers, row): #combine header names with row values (v) in a series of tuples
column[h].append(v) #append each value to the relevant column
データが辞書形式になっていることを理解しています。「Total_Depth」キーに基づいてフィルター処理したいのですが、これを行う方法がわかりません。「if」ステートメントを使用して関連する行を選択することを目指していますが、辞書構造でこれを行う方法がわかりません。
アドバイスをいただければ幸いです。SB :)