exo_ggplot.R

library(tidyverse)

if(!file.exists(here::here("data", "PanTHERIA_1-0_WR05_Aug2008.txt"))){
  system(paste0("wget ",
                "https://github.com/FRBCesab/datatoolboxexos/raw/main/data/pantheria-traits/PanTHERIA_1-0_WR05_Aug2008.txt ",
                "-P ",here::here("data/")))
}

pantheria <- readr::read_delim(here::here("data","PanTHERIA_1-0_WR05_Aug2008.txt"),delim = "\t")

pantheria |>
  mutate(MSW05_Order=as.factor(MSW05_Order),
         MSW05_Family=as.factor(MSW05_Family)) |>
  rename(adultbodymass=`5-1_AdultBodyMass_g`,
         dispersalage=`7-1_DispersalAge_d`,
         gestationlen=`9-1_GestationLen_d`,
         homerange=`22-2_HomeRange_Indiv_km2`,
         littersperyear=`16-1_LittersPerYear`,
         longevity=`17-1_MaxLongevity_m`,
         family=MSW05_Family,
         order=MSW05_Order) |>
  select(family,order,longevity,homerange,littersperyear) |>
  na_if(-999) -> dat

dat |>
  summarise(n_family=n_distinct(family),
         n_order=n_distinct(order))

data |>
  filter(!is.na(homerange)) |>
  group_by(family) |>
  summarise(
            mean_homerange=mean(homerange),
            sd_homerange=sd(homerange),
            n_sample=length(homerange)
            ) |>
  arrange(desc(n_sample))

data |>
  count(family) |>
  filter(n>100) |>
  arrange(n) |>
  mutate(family=factor(family,levels=family)) |>
  ggplot()+
  aes(x=n,y=family)+
  geom_col()+
  ggtitle("Super plot")+
  xlab("# observations")+
  ylab("family names")


data |>
  filter(!is.na(longevity)&!is.na(littersperyear)) |>
  count(family) |>
  filter(n>20)
nhenry50/datatoolboxexos2021 documentation built on Dec. 22, 2021, 2:09 a.m.