Skip to content

simple class for working with GO (gene ontology); also see Bio::GO classes in bioruby

License

Notifications You must be signed in to change notification settings

princelab/gene_ontology

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GeneOntology

Parses gene ontology .obo files, links terms through is_a and provides methods to find levels and traverse the tree.

Installation

Add this line to your application's Gemfile:

gem 'gene_ontology'

And then execute:

$ bundle

Or install it yourself as:

$ gem install gene_ontology

Usage

require 'gene_ontology'

# download from http://purl.obolibrary.org/obo/go.obo
go = GeneOntology.from_file("go.obo")

go.header # => a GeneOntology::Header object
go.id_to_term # => a hash from GO id to the GeneOntology::Term

some_term = go.id_to_term.values.first

# traverse the tree upwards, beginning with the current Term
some_term.each do |term|
  term.name =~ /Plasma Membrane/i
end
some_term.level  # => how many levels down from the top 3
                 # molecular_function, biol comp. etc are level 0

Testing

rake test

Note: will download http://purl.obolibrary.org/obo/go.obo to a tempfile unless 'go.obo' is already in package root. Just for testing.

License

MIT License -- see LICENSE for copyright info.

About

simple class for working with GO (gene ontology); also see Bio::GO classes in bioruby

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages