PantherDB Adapter

Command Line Examples

Use the pantherdb selector, with an optional NCBI Taxon local ID.

Annotation

runoak -i pantherdb:9606 associations -Q subject UniProtKB:P04217 --no-autolabel

Enrichment

runoak -i pantherdb:9606 enrichment -U my-gene-ids.txt

Mapping

runoak -i pantherdb:9606 mappings UniProtKB:P04217

Code

class oaklib.implementations.pantherdb.pantherdb_implementation.PantherDBImplementation(resource: ~oaklib.resource.OntologyResource | None = None, strict: bool = False, _multilingual: bool | None = None, autosave: bool = <factory>, exclude_owl_top_and_bottom: bool = <factory>, ontology_metamodel_mapper: ~oaklib.mappers.ontology_metadata_mapper.OntologyMetadataMapper | None = None, _converter: ~curies.api.Converter | None = None, auto_relax_axioms: bool | None = None, cache_lookups: bool = False, property_cache: ~oaklib.utilities.keyval_cache.KeyValCache = <factory>, _edge_index: ~oaklib.indexes.edge_index.EdgeIndex | None = None, _entailed_edge_index: ~oaklib.indexes.edge_index.EdgeIndex | None = None, _prefix_map: ~typing.Mapping[str, str] | None = None, _association_index: ~oaklib.utilities.associations.association_index.AssociationIndex | None = None, normalizers: ~typing.List[~oaklib.interfaces.association_provider_interface.EntityNormalizer] = <factory>, _requests_session: ~requests_cache.session.CachedSession | None = None, taxon_id: int | None = None, use_protein_ids: bool = True, **_kwargs)[source]

PantherDB implementation for OAK.

This implementation provides access to PantherDB data and services.

>>> from oaklib import get_adapter
>>> adapter = get_adapter("pantherdb:9606")
>>> for assoc in adapter.associations(["UniProtKB:P04217"]):
...     print(assoc.object)

...
GO:0005576
...

In general this Adapter needs to be instantiated with a taxon_id, which is the NCBI Taxon ID for the species of interest.

If your input IDs are all HGNC gene IDs, this is inferred automatically.

Note that currently the PantherDB API doesn’t distinguish between HGNC and NCBIGene IDs. Although you as the client will pass in CURIEs, only the numeric part is used, so matches may be more permissive than expected.