Experimental Factor Ontology (EFO)

The Experimental Factor Ontology (EFO) is a comprehensive ontology developed to provide systematic, standardized descriptions of experimental variables and factors in biological and biomedical research [1] [2]. EFO integrates terms from multiple biological ontologies, including UBERON for anatomy, ChEBI for chemical compounds, and the Cell Ontology, in order to support the annotation, analysis, and visualization of experimental data [1] [2]. It is widely used for annotating datasets in EMBL-EBI resources and external projects such as the NHGRI-EBI GWAS Catalog, and it is also used as the core ontology for Open Targets [1] [5]. EFO enables semantic interoperability, data integration, and ontology-based querying across diverse datasets, facilitating cross-study comparison and data reuse [1] [4]. The ontology is actively maintained at EMBL-EBI and continues to evolve in response to new data types and research needs [3] [1]. By providing a unified framework for describing experimental factors, EFO supports data sharing, discovery, and knowledge integration in genomics, transcriptomics, and related life science domains [1] [5].

Example Usage: Annotate a gene expression or association dataset with EFO terms to specify experimental variables such as tissue type, disease or phenotype, treatment, and assay-related factors, enabling semantic search, cross-study comparison, and meta-analysis across biological datasets [1] [4].

Metrics & Statistics

Graph Statistics

Total Nodes

948012

Total Edges

2874304

Root Nodes

308011

Leaf Nodes

443836

Knowledge Coverage Statistics

Classes

88311

Individuals

0

Properties

87

Hierarchical Metrics

Maximum Depth

13

Minimum Depth

0

Average Depth

1.24

Depth Variance

2.14

Breadth Metrics

Maximum Breadth

308011

Minimum Breadth

5

Average Breadth

62043.14

Breadth Variance

11287110481.98

LLMs4OL Dataset Statistics

Term Types

0

Taxonomic Relations

162458

Non-taxonomic Relations

10335

Average Terms per Type

0.00

Usage Example

Use the following code to import this ontology programmatically:

from ontolearner.ontology import EFO

ontology = EFO()
ontology.load("path/to/EFO-ontology.owl")

# Extract datasets
data = ontology.extract()

# Access specific relations
term_types = data.term_typings
taxonomic_relations = data.type_taxonomies
non_taxonomic_relations = data.type_non_taxonomic_relations

References