library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ ggplot2 3.5.2 ✔ tibble 3.3.0
## ✔ lubridate 1.9.4 ✔ tidyr 1.3.1
## ✔ purrr 1.1.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
data.1 <- read_csv("DATA1.csv", skip = 1)
## Rows: 427 Columns: 12
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Species
## dbl (11): MaleCare, MaleProv, Monotocous, BodyMass, LitterSize, TeatRatio, N...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
data.2 <- read_csv("DATA2.csv")
## New names:
## • `` -> `...32`
## • `` -> `...33`
## • `` -> `...34`
## • `` -> `...35`
## • `` -> `...36`
## Warning: One or more parsing issues, call `problems()` on your data frame for details,
## e.g.:
## dat <- vroom(...)
## problems(dat)
## Rows: 6627 Columns: 36
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (9): binomial, Order, Family, Genus, Species, TaxonomicNote, TrophicLev...
## dbl (22): Animal, Vertebrate, Mammal, Bird, Herptile, Fish, Invertebrate, Pl...
## lgl (5): ...32, ...33, ...34, ...35, ...36
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
data.3 <- read_csv("DATA3.csv", skip = 1)
## Rows: 1552 Columns: 14
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (10): Binomial, order, family, genus, species, Sample_size.brain, Sample...
## dbl (4): Mean_brain_mass_g, Mean_body_mass_g, Brain.resid, T_resid
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
data.4 <- read_csv("DATA4.csv", skip = 1)
## Warning: One or more parsing issues, call `problems()` on your data frame for details,
## e.g.:
## dat <- vroom(...)
## problems(dat)
## Rows: 1348 Columns: 11
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (11): Species name (original dataset), Species name (phylogenetic tree),...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
max.lifespan.data <- read_csv("AnAgeDATA - anage_data.csv")
## Rows: 4645 Columns: 31
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (13): Kingdom, Phylum, Class, Order, Family, Genus, Species, Common name...
## dbl (18): HAGRID, Female maturity (days), Male maturity (days), Gestation/In...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
colnames(data.1)[2] <- c("Biparental")
data.1.subset <- data.1[, c(1,2,6,8)]
colnames(data.2)[1] <- c("Species")
data.2.subset <- data.2[, c(1,2,24)]
colnames(data.3)[1] <- c("Species")
data.3.subset <-data.3[, c(1,9,10)]
colnames(data.4)[1] <- c("Species")
data.4.subset <- data.4[, c(1,5)]
data.1.3 <- merge(data.1.subset, data.3.subset, by = "Species", all = FALSE)
data.2.4 <- merge(data.2.subset, data.4.subset, by = "Species", all = FALSE)
data.1.3 <- data.1.3 |>
mutate(Species = str_replace_all(Species, "_", " "))
finalized.data <- merge(data.1.3, data.2.4, by = "Species", all = FALSE)
finalized.data <- finalized.data[!is.na(finalized.data$NeonateMass), ]
finalized.data$`BMR (ml O2 h-1)` <- parse_number(finalized.data$`BMR (ml O2 h-1)`)
finalized.data <- unique(finalized.data)
BMR <- matrix(c(46.20,877.61,33.84,458.71,43.18,1126.87,56.72,2686.57,8077.11,3771.14,
31.34,51.6,3396.52,1522.89,23.52,47.26,409.46,26.87,610.95,1073.63,52.03,323.38,
137.2,262.84,761.19,25.87,2030.85,221.89,2497.51,3127.86,5226.37,5777.61,1930.35,
594.90,123.75,82.20,55.93,65.34,165.00,861.69,45.22,173.17,29.61,316.05,31.82,36.69,
21.48,97.83,1047.26,337.95,34.33,70.65,503.48,757.71,27.15,82.84,32.09,594.53,369.60,
802.49,251.00,22.13,64.64,293.03,310.25,254.55,936.82,1501.00,398.01), ncol = 1)
colnames(BMR) <- "BMR (ml O2 h-1)"
final.final <- merge(finalized.data, BMR, by = "BMR (ml O2 h-1)", all.y = TRUE)
colnames(final.final)[1] <- c("BMR")
final.final <- final.final[!is.na(final.final$Species), ]
final.final <- final.final |>
relocate("BMR", .after = "Mean_body_mass_g")
final.final$Species
## [1] "Crocidura russula" "Heterocephalus glaber"
## [3] "Desmodus rotundus" "Carollia perspicillata"
## [5] "Rhabdomys pumilio" "Phyllostomus discolor"
## [7] "Apodemus sylvaticus" "Acomys cahirinus"
## [9] "Cercartetus nanus" "Elephantulus intufi"
## [11] "Microtus pinetorum" "Sorex araneus"
## [13] "Mus musculus" "Microtus ochrogaster"
## [15] "Rattus fuscipes" "Petaurus breviceps"
## [17] "Meriones unguiculatus" "Galago senegalensis"
## [19] "Mustela erminea" "Octodon degus"
## [21] "Sigmodon hispidus" "Tamiasciurus hudsonicus"
## [23] "Spilogale putorius" "Suricata suricatta"
## [25] "Perameles nasuta" "Eulemur fulvus"
## [27] "Eulemur fulvus" "Philander opossum"
## [29] "Sciurus carolinensis" "Vulpes zerda"
## [31] "Dasyurus viverrinus" "Aotus trivirgatus"
## [33] "Saimiri sciureus" "Martes americana"
## [35] "Potos flavus" "Genetta tigrina"
## [37] "Genetta tigrina" "Setonix brachyurus"
## [39] "Nandinia binotata" "Ailurus fulgens"
## [41] "Phascolarctos cinereus" "Arctictis binturong"
## [43] "Vulpes vulpes" "Madoqua kirkii"
## [45] "Hystrix africaeaustralis" "Lasiorhinus latifrons"
## [47] "Canis latrans" "Leptailurus serval"
## [49] "Cercopithecus mitis" "Cercopithecus mitis"
## [51] "Canis mesomelas" "Macropus giganteus"
final.final <- final.final[-c(26,36,49), ]
final.final$Species
## [1] "Crocidura russula" "Heterocephalus glaber"
## [3] "Desmodus rotundus" "Carollia perspicillata"
## [5] "Rhabdomys pumilio" "Phyllostomus discolor"
## [7] "Apodemus sylvaticus" "Acomys cahirinus"
## [9] "Cercartetus nanus" "Elephantulus intufi"
## [11] "Microtus pinetorum" "Sorex araneus"
## [13] "Mus musculus" "Microtus ochrogaster"
## [15] "Rattus fuscipes" "Petaurus breviceps"
## [17] "Meriones unguiculatus" "Galago senegalensis"
## [19] "Mustela erminea" "Octodon degus"
## [21] "Sigmodon hispidus" "Tamiasciurus hudsonicus"
## [23] "Spilogale putorius" "Suricata suricatta"
## [25] "Perameles nasuta" "Eulemur fulvus"
## [27] "Philander opossum" "Sciurus carolinensis"
## [29] "Vulpes zerda" "Dasyurus viverrinus"
## [31] "Aotus trivirgatus" "Saimiri sciureus"
## [33] "Martes americana" "Potos flavus"
## [35] "Genetta tigrina" "Setonix brachyurus"
## [37] "Nandinia binotata" "Ailurus fulgens"
## [39] "Phascolarctos cinereus" "Arctictis binturong"
## [41] "Vulpes vulpes" "Madoqua kirkii"
## [43] "Hystrix africaeaustralis" "Lasiorhinus latifrons"
## [45] "Canis latrans" "Leptailurus serval"
## [47] "Cercopithecus mitis" "Canis mesomelas"
## [49] "Macropus giganteus"
final.final$MaxLifeSpan <- c(4.00,31.00,29.20,17.00,4.50,9.00,6.30,5.90,10.30,
9.30,3.80,3.20,4.00,5.30,5.30,17.8,6.30,17.1,12.5,
14.00,5.20,9.80,10.50,20.60,5.60,35.50,4.40,23.60,
16.30,6.80,30.10,30.20,17.80,38.40,21.30,13.80,21.00,
19.00,22.10,27.00,21.30,17.30,23.10,29.90,21.80,22.40,
37.80,16.70,25.00)
final.final <- final.final |>
add_row(Species = "Antechinus stuartii", Biparental = 0, LitterSize = 6.89, NeonateMass = 0.01,
Mean_brain_mass_g = 0.76, Mean_body_mass_g = 29.01, BMR = 33.84,
Order = "MARSUPIALIA", TrophicLevel = "Carnivore", MaxLifeSpan = 5.4)
final.final <- final.final |>
add_row(Species = "Artibeus jamaicensis", Biparental = 0, LitterSize = 1.00, NeonateMass = 10.57,
Mean_brain_mass_g = 0.98025, Mean_body_mass_g = 43.63, BMR = 56.72,
Order = "OTHER PLACENTAL", TrophicLevel = "Omnivore", MaxLifeSpan = 19.2)
final.final <- final.final |>
add_row(Species = "Canis lupus", Biparental = 1, LitterSize = 4.98, NeonateMass = 412.31,
Mean_brain_mass_g = 130.00, Mean_body_mass_g = 31756.51, BMR = 8077.11,
Order = "CARNIVORA", TrophicLevel = "Carnivore", MaxLifeSpan = 20.6)
final.final <- final.final |>
add_row(Species = "Cerdocyon thous", Biparental = 1, LitterSize = 3.09, NeonateMass = 140,
Mean_brain_mass_g = 49.50, Mean_body_mass_g = 5741.66, BMR = 1522.89,
Order = "CARNIVORA", TrophicLevel = "Omnivore", MaxLifeSpan = 12.7)
final.final <- final.final |>
add_row(Species = "Cynopterus brachyotis", Biparental = 0, LitterSize = 0.99, NeonateMass = 6.2,
Mean_brain_mass_g = 0.95275, Mean_body_mass_g = 33.87, BMR = 47.26,
Order = "OTHER PLACENTAL", TrophicLevel = "Herbivore", MaxLifeSpan = 10.1)
final.final <- final.final |>
add_row(Species = "Didelphis marsupialis", Biparental = 0, LitterSize = 7.09, NeonateMass = 0.16,
Mean_brain_mass_g = 6.35, Mean_body_mass_g = 1134.75, BMR = 610.95,
Order = "MARSUPIALIA", TrophicLevel = "Omnivore", MaxLifeSpan = 4.2)
final.final <- final.final |>
add_row(Species = "Didelphis virginiana", Biparental = 0, LitterSize = 8.62, NeonateMass = 0.15,
Mean_brain_mass_g = 6.72, Mean_body_mass_g = 2442.08, BMR = 1073.63,
Order = "MARSUPIALIA", TrophicLevel = "Omnivore", MaxLifeSpan = 6.6)
final.final <- final.final |>
add_row(Species = "Galea musteloides", Biparental = 0, LitterSize = 2.6, NeonateMass = 37.39,
Mean_brain_mass_g = 2.72, Mean_body_mass_g = 386.64, BMR = 262.84,
Order = "RODENTIA", TrophicLevel = "Herbivore", MaxLifeSpan = 3.5)
final.final <- final.final |>
add_row(Species = "Isoodon obesulus", Biparental = 0, LitterSize = 2.33, NeonateMass = 0.34,
Mean_brain_mass_g = 4.03, Mean_body_mass_g = 824.76, BMR = 221.89,
Order = "MARSUPIALIA", TrophicLevel = "Carnivore", MaxLifeSpan = 6.5)
final.final <- final.final |>
add_row(Species = "Macropus rufus", Biparental = 0, LitterSize = 1, NeonateMass = 0.81,
Mean_brain_mass_g = 62.4, Mean_body_mass_g = 38968.39, BMR = 5777.61,
Order = "MARSUPIALIA", TrophicLevel = "Herbivore", MaxLifeSpan = 25)
final.final <- final.final |>
add_row(Species = "Notomys alexis", Biparental = 1, LitterSize = 4.01, NeonateMass = 2.29,
Mean_brain_mass_g = 0.96, Mean_body_mass_g = 32.34, BMR = 45.22,
Order = "RODENTIA", TrophicLevel = "Omnivore", MaxLifeSpan = 6.4)
final.final <- final.final |>
add_row(Species = "Onychomys torridus", Biparental = 1, LitterSize = 3.3, NeonateMass = 2.33,
Mean_brain_mass_g = 0.59, Mean_body_mass_g = 21.68, BMR = 29.61,
Order = "RODENTIA", TrophicLevel = "Carnivore", MaxLifeSpan = 4.6)
final.final <- final.final |>
add_row(Species = "Peromyscus eremicus", Biparental = 1, LitterSize = 2.52, NeonateMass = 2.51,
Mean_brain_mass_g = 0.54, Mean_body_mass_g = 22.73, BMR = 31.82,
Order = "RODENTIA", TrophicLevel = "Omnivore", MaxLifeSpan = 7.4)
final.final <- final.final |>
add_row(Species = "Peromyscus leucopus", Biparental = 1, LitterSize = 4.27, NeonateMass = 1.8,
Mean_brain_mass_g = 0.6, Mean_body_mass_g = 18.07, BMR = 36.69,
Order = "RODENTIA", TrophicLevel = "Omnivore", MaxLifeSpan = 7.9)
final.final <- final.final |>
add_row(Species = "Peromyscus polionotus", Biparental = 1, LitterSize = 3.59, NeonateMass = 1.54,
Mean_brain_mass_g = 0.42, Mean_body_mass_g = 14.27, BMR = 21.48,
Order = "RODENTIA", TrophicLevel = "Omnivore", MaxLifeSpan = 5.5)
final.final <- final.final |>
add_row(Species = "Phyllostomus hastatus", Biparental = 0, LitterSize = 0.99, NeonateMass = 15.94,
Mean_brain_mass_g = 1.53175, Mean_body_mass_g = 91.44, BMR = 70.65,
Order = "OTHER PLACENTAL", TrophicLevel = "Carnivore", MaxLifeSpan = 18)
final.final <- final.final |>
add_row(Species = "Potorous tridactylus", Biparental = 0, LitterSize = 1, NeonateMass = 0.31,
Mean_brain_mass_g = 9.53, Mean_body_mass_g = 1054.67, BMR = 503.48,
Order = "MARSUPIALIA", TrophicLevel = "Omnivore", MaxLifeSpan = 14.5)
final.final <- final.final |>
add_row(Species = "Pseudantechinus macdonnellensis", Biparental = 0, LitterSize = 5.88, NeonateMass = 0.01,
Mean_brain_mass_g = 0.49, Mean_body_mass_g = 36.88, BMR = 27.15,
Order = "MARSUPIALIA", TrophicLevel = "Carnivore", MaxLifeSpan = 7)
final.final <- final.final |>
add_row(Species = "Sminthopsis crassicaudata", Biparental = 0, LitterSize = 6.52, NeonateMass = 0.01,
Mean_brain_mass_g = 0.36, Mean_body_mass_g = 15.98, BMR = 22.13,
Order = "MARSUPIALIA", TrophicLevel = "Carnivore", MaxLifeSpan = 5)
final.final <- final.final |>
add_row(Species = "Vulpes velox", Biparental = 1, LitterSize = 4.25, NeonateMass = 39.94,
Mean_brain_mass_g = 32.1, Mean_body_mass_g = 2088, BMR = 936.82,
Order = "CARNIVORA", TrophicLevel = "Carnivore", MaxLifeSpan = 15.9)
write_csv(final.final, "output_file.csv")