NAME

gt-select - Select certain features (specified by the used options) from given GFF3 file(s).

SYNOPSIS

gt select [option …] [GFF3_file …]

DESCRIPTION

-retainids [yes|no]

when available, use the original IDs provided in the source file (memory consumption is proportional to the input file size(s)) (default: no)

-seqid [string]

select feature with the given sequence ID (all comments are selected). (default: undefined)

-source [string]

select feature with the given source (the source is column 2 in regular GFF3 lines) (default: undefined)

-contain [start end]

select all features which are contained in the given range (default: undefined)

-overlap [start end]

select all features which do overlap with the given range (default: undefined)

-strand [string]

select all top-level features(i.e., features without parents) whose strand equals the given one (must be one of +-.?) (default: undefined)

-targetstrand [string]

select all top-level features (i.e., features without parents) which have exactly one target attribute whose strand equals the given one (must be one of +-.?) (default: undefined)

-targetbest [yes|no]

if multiple top-level features (i.e., features without parents) with exactly one target attribute have the same target_id, keep only the feature with the best score. If -targetstrand is used at the same time, this option is applied after -targetstrand. Memory consumption is proportional to the input file size(s). (default: no)

-hascds [yes|no]

select all top-level features which do have a CDS child (default: no)

-maxgenelength [value]

select genes up to the given maximum length (default: undefined)

-maxgenenum [value]

select the first genes up to the given maximum number (default: undefined)

-mingenescore [value]

select genes with the given minimum score (default: undefined)

-maxgenescore [value]

select genes with the given maximum score (default: undefined)

-minaveragessp [value]

set the minimum average splice site probability (default: undefined)

-rule_files

specify Lua filter rule files to be used for selection (terminate list with --)

-rule_logic []

select how multiple Lua files should be combined choose from AND|OR (default: AND)

-dropped_file [filename]

save non-selected features to file (default: undefined)

-v [yes|no]

be verbose (default: no)

-o [filename]

redirect output to specified file (default: undefined)

-gzip [yes|no]

write gzip compressed output file (default: no)

-bzip2 [yes|no]

write bzip2 compressed output file (default: no)

-force [yes|no]

force writing to output file (default: no)

-help

display help and exit

-version

display version information and exit

File format for option -rule_files:

The files supplied to option -rule_files define a function for filtering by user given criteria (see example below):

function filter(gn)
  target = "exon"
  for curnode in gn:children() do
    if (curnode:get_type() == target) then
      return false
    end
  end
  return true
end

The above function iterates over all children of gn and checks whether there is a node of type exon. If there is such a node the function returns false, indicating that the parent node gn will not be sorted out.

NOTE: The function must be named filter and must return false, indicating that the node survived the filtering process.

REPORTING BUGS