Iteratively copy specific rows from CSV file to new file
<p>I have a large tab-delimited csv file with the following format:</p>

<pre><code>#mirbase_acc    mirna_name  gene_id gene_symbol transcript_id   ext_transcript_id   mirna_alignment gene_alignment  mirna_start mirna_end   gene_start  gene_end    genome_coordinates  conservation    align_score seed_cat    energy  mirsvr_score
</code></pre>

<p>What I would like to be able to do is iterate through rows and select items based on data (strings) in the "gene_id" field, then copy those rows to a new file.</p>

<p>I am a python noob, and thought it would be a good way to get my feet wet, but it is harder than it looks! I have been trying to use the csv package to manipulate the files, reading and writing basic stuff using dictreader and dictwriter. If anyone can help me out coming up with a template for the iterative searching aspect, I would be greatly indebted. So far I have:</p>

<pre><code>import csv

f = open("C:\Documents and Settings\Administrator\Desktop\miRNA Scripting\mirna_predictions_short.txt", "r")
reader = csv.DictReader(f, delimiter='\t')
writer = open("output.txt",'wb')
writer = csv.writer(writer, delimiter='\t')
</code></pre>

<p>Then the iterative bit, bleurgh:</p>

<pre><code>for row in reader:
    if reader.gene_id == str(CG11710):
        writer.writerow
</code></pre>

<p>This obviously doesnt work. Any ideas on better ways to structure this??</p>
