अहोई के भीतर निर्दिष्ट मान, मैं कुछ बड़ी सीएसवी फाइलों को फ़िल्टर करने के लिए एक पायथन स्क्रिप्ट लिख रहा हूं।सीएसवी से एक पंक्ति लौटाना, यदि पंक्ति मिलान स्थिति
मैं केवल उन पंक्तियों को रखना चाहता हूं जो मेरे मानदंडों को पूरा करते हैं।
मेरे इनपुट निम्न स्वरूप
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.
मैं डेटा को पढ़ने में this answer निम्नलिखित किया गया है है चाहता हूँ में CSV फ़ाइल है । लेकिन पंक्तियों पर पार्स करने की कोशिश कर रहा हूं और मेरी हालत को पूरा करने वाली लाइनों को खींच रहा हूं।
यहाँ कोड है मैं अब तक है:
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' कथन का उपयोग करना चाहता हूं, लेकिन यह सुनिश्चित नहीं करता कि शब्दकोश संरचना के साथ इसे कैसे किया जाए।
किसी भी सलाह की सराहना की जाएगी। एस.बी. :)
धन्यवाद @falsetru, यह एक इलाज किया है। –