## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", eval = FALSE ) library(taxodist) ## ----lineage------------------------------------------------------------------ # lin <- get_lineage("Tyrannosaurus") # tail(lin, 8) # #> [1] "Avetheropoda" "Coelurosauria" "Tyrannoraptora" "Tyrannosauroidea" # #> [5] "Tyrannosauridae" "Tyrannosaurinae" "Tyrannosaurini" "Tyrannosaurus" ## ----lineage-species---------------------------------------------------------- # lin <- get_lineage("Drosophila melanogaster") # tail(lin, 4) # #> [1] "Ephydroidea" "Drosophilidae" "Drosophilinae" # #> [4] "Drosophila melanogaster" ## ----distance----------------------------------------------------------------- # result <- taxo_distance("Tyrannosaurus", "Velociraptor") # print(result) # #> -- Taxonomic Distance -- # #> # #> * Tyrannosaurus vs Velociraptor # #> Distance : 0.0153846153846154 # #> MRCA : Tyrannoraptora (depth 65) # #> Depth A : 70 # #> Depth B : 73 ## ----distance-far------------------------------------------------------------- # taxo_distance("Tyrannosaurus", "Homo")$distance # 0.02777778 # taxo_distance("Tyrannosaurus", "Drosophila")$distance # 0.06666667 # taxo_distance("Tyrannosaurus", "Quercus")$distance # 0.25 # taxo_distance("Escherichia", "Homo")$distance # 1 ## ----mrca--------------------------------------------------------------------- # mrca("Tyrannosaurus", "Velociraptor") # "Tyrannoraptora" # mrca("Tyrannosaurus", "Triceratops") # "Dinosauria" # mrca("Tyrannosaurus", "Homo") # "Amniota" # mrca("Tyrannosaurus", "Drosophila") # "Nephrozoa" # mrca("Tyrannosaurus", "Quercus") # "discaria" ## ----matrix------------------------------------------------------------------- # taxa <- c("Tyrannosaurus", "Carnotaurus", "Velociraptor", # "Triceratops", "Homo", "Drosophila melanogaster") # mat <- distance_matrix(taxa) # print(mat) # # #> Tyrannosaurus Carnotaurus Velociraptor Triceratops Homo # #> Carnotaurus 0.01666667 # #> Velociraptor 0.01538462 0.01666667 # #> Triceratops 0.01818182 0.01818182 0.01818182 # #> Homo 0.02777778 0.02777778 0.02777778 0.02777778 # #> Drosophila melanogaster 0.06666667 0.06666667 0.06666667 0.06666667 0.06666667 ## ----cluster------------------------------------------------------------------ # tree <- ape::as.phylo(hclust(mat, method = "average")) # plot(tree, main = "Taxonomic clustering") ## ----closest------------------------------------------------------------------ # closest_relative( # "Carnotaurus", # c("Aucasaurus", "Velociraptor", "Triceratops", # "Brachiosaurus", "Homo sapiens", "Apis mellifera") # ) # #> taxon distance # #> 1 Aucasaurus 0.01515152 # #> 2 Velociraptor 0.01666667 # #> 4 Brachiosaurus 0.01754386 # #> 3 Triceratops 0.01818182 # #> 5 Homo sapiens 0.02777778 # #> 6 Apis mellifera 0.06666667 ## ----compare------------------------------------------------------------------ # compare_lineages("Carnotaurus", "Tyrannosaurus") # #> -- Lineage Comparison -- # #> MRCA: Averostra at depth 60 # #> # #> Shared lineage (60 nodes): # #> Biota ... Theropoda # #> # #> Carnotaurus only (7 nodes): # #> Ceratosauria # #> Neoceratosauria # #> Abelisauroidea # #> Abelisauria # #> Abelisauridae # #> Carnotaurinae # #> Carnotaurus # #> # #> Tyrannosaurus only (10 nodes): # #> Tetanurae # #> Orionides # #> ... ## ----shared------------------------------------------------------------------- # # what do a fly and a beetle have in common? # shared_clades("Drosophila melanogaster", "Tribolium castaneum") # # returns their shared lineage from Biota down to their MRCA # # # what do T. rex and a rose share? # shared_clades("Tyrannosaurus rex", "Rosa agrestis") ## ----membership--------------------------------------------------------------- # is_member("Tyrannosaurus", "Theropoda") # TRUE # is_member("Carnotaurus", "Abelisauridae") # TRUE # is_member("Triceratops", "Theropoda") # FALSE # is_member("Homo sapiens", "Amniota") # TRUE # is_member("Drosophila melanogaster", "Insecta") # TRUE # is_member("Quercus robur", "Animalia") # FALSE ## ----filter------------------------------------------------------------------- # taxa <- c("Tyrannosaurus", "Carnotaurus", "Triceratops", # "Velociraptor", "Homo sapiens", "Drosophila melanogaster", # "Quercus robur", "Saccharomyces cerevisiae") # # filter_clade(taxa, "Dinosauria") # #> [1] "Tyrannosaurus" "Carnotaurus" "Triceratops" "Velociraptor" # # filter_clade(taxa, "Theropoda") # #> [1] "Tyrannosaurus" "Carnotaurus" "Velociraptor" # # filter_clade(taxa, "Animalia") # #> [1] "Tyrannosaurus" "Carnotaurus" # #> [3] "Triceratops" "Velociraptor" # #> [5] "Homo sapiens" "Drosophila melanogaster" ## ----coverage----------------------------------------------------------------- # taxa <- c("Tyrannosaurus", "Velociraptor", "Apis mellifera", "Fakeosaurus") # check_coverage(taxa) # #> Tyrannosaurus Velociraptor Apis mellifera Fakeosaurus # #> TRUE TRUE TRUE FALSE ## ----cache-------------------------------------------------------------------- # clear_cache()