https://github.com/morgankain/RRV_HostVectorCompetence
Raw File
Tip revision: be7e87c3c4c8af0420a8dd42cdcff5586fdbad90 authored by Morgan Kain on 25 May 2021, 16:23 UTC
Merge pull request #1 from morgankain/add-license-1
Tip revision: be7e87c
21_summarize_all_permuted.R
####
## Goal here is to compare ranks between a focal trait TRUE vs FALSE over all possible combinations of the rest of the 
## traits being TRUE and FALSE. That is, comparing change in ranks when the focal component is added across all possible ways in 
## which that focal trait can be added
####

eco.components <- colnames(model.runs)

for (i in seq_along(eco.components)) {
  
## Subset the current focal ecological component to TRUE or FALSE
temp_F <- host_competence.r.gg.hh.f %>% filter(get(eco.components[i]) == FALSE) %>% 
  dplyr::select(-eco.components[i], -model.complexity)
temp_T <- host_competence.r.gg.hh.f %>% filter(get(eco.components[i]) == TRUE) %>%
  dplyr::select(-eco.components[i], -model.complexity)
names(temp_F)[3] <- "comp_F"
names(temp_T)[3] <- "comp_T" 
 
## Combine the ranks for true or false to line up all of the orders of eco components
temp_C <- left_join(temp_T, temp_F); rm(temp_F); rm(temp_T)
temp_C %<>% mutate(diff_rank = comp_F - comp_T)

## Summarize difference in rank between including eco component X or not for all ways of including eco component X
temp_C.heat <- temp_C %>% 
  group_by(host, diff_rank) %>% 
  summarize(den = length(diff_rank) / (nrow(temp_C) / 12)) %>% 
    mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

## Or summarize the raw rank of each host in all models in which a given ecological component is considered
temp_C.heat.raw <- temp_C %>% 
  group_by(host, comp_T) %>% 
  summarize(den = length(comp_T) / (nrow(temp_C) / 12)) %>% 
    mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

temp_C.sum <- temp_C %>% 
  group_by(host) %>%
  summarize(
    est = quantile(diff_rank, c(0.50))
  , lwr = quantile(diff_rank, c(0.025))
  , upr = quantile(diff_rank, c(0.975))
    ) %>% 
  mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

temp_C.sum.raw <- temp_C %>% 
  group_by(host) %>%
  summarize(
    est = quantile(comp_T, c(0.50))
  , lwr = quantile(comp_T, c(0.025))
  , upr = quantile(comp_T, c(0.975))
    ) %>% 
  mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

if (i == 1) {

full_permuted.heat_hh <- temp_C.heat
full_permuted.sum_hh  <- temp_C.sum

full_permuted.heat_hh.raw <- temp_C.heat.raw
full_permuted.sum_hh.raw  <- temp_C.sum.raw
  
} else {
  
full_permuted.heat_hh <- rbind(full_permuted.heat_hh, temp_C.heat)
full_permuted.sum_hh  <- rbind(full_permuted.sum_hh, temp_C.sum)

full_permuted.heat_hh.raw <- rbind(full_permuted.heat_hh.raw, temp_C.heat.raw)
full_permuted.sum_hh.raw  <- rbind(full_permuted.sum_hh.raw, temp_C.sum.raw)
  
}

}

for (i in seq_along(eco.components)) {
  
## Subset the current focal ecological component to TRUE or FALSE
temp_F <- mosq_competence.r.gg.mm.f %>% filter(get(eco.components[i]) == FALSE) %>% 
  dplyr::select(-eco.components[i], -model.complexity)
temp_T <- mosq_competence.r.gg.mm.f %>% filter(get(eco.components[i]) == TRUE) %>%
  dplyr::select(-eco.components[i], -model.complexity)
names(temp_F)[3] <- "comp_F"
names(temp_T)[3] <- "comp_T" 
 
## Combine the ranks for true or false to line up all of the orders of eco components
temp_C <- left_join(temp_T, temp_F); rm(temp_F); rm(temp_T)
temp_C %<>% mutate(diff_rank = comp_F - comp_T)

temp_C.heat <- temp_C %>% 
  group_by(mosq, diff_rank) %>% 
  summarize(den = length(diff_rank) / (nrow(temp_C) / 12)) %>% 
    mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

## Or summarize the raw rank of each host in all models in which a given ecological component is considered
temp_C.heat.raw <- temp_C %>% 
  group_by(mosq, comp_T) %>% 
  summarize(den = length(comp_T) / (nrow(temp_C) / 12)) %>% 
    mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

temp_C.sum <- temp_C %>% 
  group_by(mosq) %>%
  summarize(
    est = quantile(diff_rank, c(0.50))
  , lwr = quantile(diff_rank, c(0.025))
  , upr = quantile(diff_rank, c(0.975))
    ) %>% 
  mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

temp_C.sum.raw <- temp_C %>% 
  group_by(mosq) %>%
  summarize(
    est = quantile(comp_T, c(0.50))
  , lwr = quantile(comp_T, c(0.025))
  , upr = quantile(comp_T, c(0.975))
    ) %>% 
  mutate(
  eco_component = strsplit(eco.components[i], split = "[.]")[[1]][2]
    )

if (i == 1) {

full_permuted.heat_mm <- temp_C.heat
full_permuted.sum_mm  <- temp_C.sum

full_permuted.heat_mm.raw <- temp_C.heat.raw
full_permuted.sum_mm.raw  <- temp_C.sum.raw
  
} else {
  
full_permuted.heat_mm <- rbind(full_permuted.heat_mm, temp_C.heat)
full_permuted.sum_mm  <- rbind(full_permuted.sum_mm, temp_C.sum)

full_permuted.heat_mm.raw <- rbind(full_permuted.heat_mm.raw, temp_C.heat.raw)
full_permuted.sum_mm.raw  <- rbind(full_permuted.sum_mm.raw, temp_C.sum.raw)
  
}

}
back to top