Calculate Gene Ontology (GO) semantic similarity matrix
Usage
GO_similarity(
go_id,
ont = NULL,
db = "org.Hs.eg.db",
measure = "Sim_XGraSM_2013"
)
guess_ont(go_id, db = "org.Hs.eg.db")
random_GO(n, ont = c("BP", "CC", "MF"), db = "org.Hs.eg.db")Arguments
- go_id
A vector of GO IDs.
- ont
Sub-ontology of GO. Value should be one of "BP", "CC" or "MF". If it is not specified, the function automatically identifies it by random sampling 10 IDs from
go_id(seeguess_ont()).- db
Annotation database. It should be an OrgDb package name from https://bioconductor.org/packages/release/BiocViews.html#___OrgDb. The value can also directly be an
OrgDbobject.- measure
Semantic measure for the GO similarity, pass to
simona::term_sim(). All valid values are insimona::all_term_sim_methods().- n
Number of GO IDs.
Value
GO_similarity() returns a symmetric matrix.
guess_ont() returns a single character scalar of "BP", "CC" or "MF".
If there are more than one ontologies detected. It returns NULL.
random_GO() returns a vector of GO IDs.
Details
The default similarity method is "Sim_XGraSM_2013". Since the semantic similarities are calculated based on gene annotations to GO terms, I suggest users also try the following methods:
"Sim_Lin_1998""Sim_Resnik_1999""Sim_Relevance_2006""Sim_SimIC_2010""Sim_XGraSM_2013""Sim_EISI_2015""Sim_AIC_2014""Sim_Wang_2007""Sim_GOGO_2018"
In guess_ont(), only 10 random GO IDs are checked.
In random_GO(), only GO terms with gene annotations are sampled.
Examples
# \donttest{
go_id = random_GO(100)
#> relations: is_a, part_of, regulates, negatively_regulates, positively_regulates
#>
#> IC_method: IC_annotation
mat = GO_similarity(go_id)
#> You haven't provided value for `ont`, guess it as `BP`.
#> term_sim_method: Sim_XGraSM_2013
#> IC_method: IC_annotation
# }
# \donttest{
go_id = random_GO(100)
guess_ont(go_id)
#> [1] "BP"
# }