text: user292: I was wondering if I could use the gff parsing capability of bioawk to facilitate the parsing of gtf files, and I looked at the following help message:
  $ bioawk -c help
  bed:
      1:chrom 2:start 3:end 4:name 5:score 6:strand 7:thickstart 8:thickend 9:rgb 10:blockcount 11:blocksizes 12:blockstarts 
  sam:
      1:qname 2:flag 3:rname 4:pos 5:mapq 6:cigar 7:rnext 8:pnext 9:tlen 10:seq 11:qual 
  vcf:
      1:chrom 2:pos 3:id 4:ref 5:alt 6:qual 7:filter 8:info 
  gff:
      1:seqname 2:source 3:feature 4:start 5:end 6:score 7:filter 8:strand 9:group 10:attribute 
  fastx:
      1:name 2:seq 3:qual 4:comment 
  
  I see that there are 10 fields defined for gff parsing.
  However, when I look at the pages for gtf and gff in the ensembl website (gff/gtf and gff3), all have 9 fields.
  I'm curious about these "filter" and "group" fields. What are they meant for? Are they extracted from some of the columns mentioned in the above pages?
  
  user77: I would consider the description there a bug. The filter is actually the strand, strand is the frame, group is the attribute, and attribute does nothing. These are really meant to be the 9 columns.
  Edit: There's a bug report related to this.
  Edit 2: I've made a pull request to clarify this and fix the aforementioned bug report.
  Edit 3: I realized that I never directly answered the title of your question (mea culpa). bioawk itself will work with gff, gff3, or gtf files. It really is just treating them as tab-separated files with named columns (this is surprisingly convenient, since it's a PITA to remember what column does what).
  Edit 4: The PR has been merged. If you install from github then you'll see corrected field names.
  
original_text: 292: <p>I was wondering if I could use the gff parsing capability of bioawk to facilitate the parsing of gtf files, and I looked at the following help message:</p>
  
  <pre><code>$ bioawk -c help
  bed:
      1:chrom 2:start 3:end 4:name 5:score 6:strand 7:thickstart 8:thickend 9:rgb 10:blockcount 11:blocksizes 12:blockstarts 
  sam:
      1:qname 2:flag 3:rname 4:pos 5:mapq 6:cigar 7:rnext 8:pnext 9:tlen 10:seq 11:qual 
  vcf:
      1:chrom 2:pos 3:id 4:ref 5:alt 6:qual 7:filter 8:info 
  gff:
      1:seqname 2:source 3:feature 4:start 5:end 6:score 7:filter 8:strand 9:group 10:attribute 
  fastx:
      1:name 2:seq 3:qual 4:comment 
  </code></pre>
  
  <p>I see that there are 10 fields defined for gff parsing.</p>
  
  <p>However, when I look at the pages for gtf and gff in the ensembl website (<a href="http://www.ensembl.org/info/website/upload/gff.html" rel="nofollow noreferrer">gff/gtf</a> and <a href="http://www.ensembl.org/info/website/upload/gff3.html" rel="nofollow noreferrer">gff3</a>), all have 9 fields.</p>
  
  <p>I'm curious about these "filter" and "group" fields. What are they meant for? Are they extracted from some of the columns mentioned in the above pages?</p>
   77: <p>I would consider the description there a bug. The <code>filter</code> is actually the strand, <code>strand</code> is the frame, <code>group</code> is the attribute, and <code>attribute</code> does nothing. These are really meant to be the 9 columns.</p>
  
  <p><strong>Edit</strong>: There's a <a href="https://github.com/lh3/bioawk/issues/16" rel="nofollow noreferrer">bug report</a> related to this.</p>
  
  <p><strong>Edit 2</strong>: I've made <a href="https://github.com/lh3/bioawk/pull/21" rel="nofollow noreferrer">a pull request</a> to clarify this and fix the aforementioned bug report.</p>
  
  <p><strong>Edit 3</strong>: I realized that I never directly answered the title of your question (<em>mea culpa</em>). bioawk itself will work with gff, gff3, or gtf files. It really is just treating them as tab-separated files with named columns (this is surprisingly convenient, since it's a PITA to remember what column does what).</p>
  
  <p><strong>Edit 4</strong>: The PR has been merged. If you install from github then you'll see corrected field names.</p>
  