Chapter 3 Data statistics

load("data/data_03122025.Rdata")
sample_metadata <- sample_metadata %>%
    mutate(time_point=case_when(
    time_point %in% c("Transplant1") ~ "Inoculum1",
    TRUE ~ time_point
  ))%>%
    mutate(time_point=case_when(
    time_point %in% c("Transplant2") ~ "Inoculum2",
    TRUE ~ time_point
  )) %>% 
    mutate(Population=case_when(
    Population %in% c("Cold_wet") ~ "Cold",
    TRUE ~ Population
  ))%>% 
    mutate(Population=case_when(
    Population %in% c("Hot_dry") ~ "Warm",
    TRUE ~ Population
  ))%>% 
    mutate(type=case_when(
    type %in% c("Hot_control") ~ "Warm_control",
    TRUE ~ type
  ))%>%
    mutate(type=case_when(
    type %in% c("Control") ~ "Cold_control",
    TRUE ~ type
  ))%>%
    mutate(type=case_when(
    type %in% c("Treatment") ~ "Cold_intervention",
    TRUE ~ type
    ))  

3.1 Sequencing reads statistics

data_stats_filter <- data_stats %>%
  left_join(., sample_metadata[c(1,4,7,10)], by = join_by(sample == Tube_code))  %>%
  filter(Population!="NA")
data_stats_filter$raw_reads %>% sum()
[1] 4761685278
data_stats_filter$raw_reads %>% mean()
[1] 29393119
data_stats_filter$raw_reads %>% sd()
[1] 13398658

3.2 DNA fractions

data_stats_filter %>%
    mutate(mapped_perc=mapped_mags/trimmed_reads) %>%
    summarise(mean=mean(mapped_perc),sd=sd(mapped_perc)) %>% 
  mutate(mean=str_c(round(mean,3),"±",round(sd,3))) %>% 
  select(mean) %>% 
  pull() %>% 
  cat()
0.454±0.2
data_stats_filter %>%
  mutate(
    low_quality = raw_reads - trimmed_reads,
    unmapped_reads = trimmed_reads - mapped_lizard - mapped_mags
  ) %>%
  select(sample, low_quality, mapped_lizard, mapped_mags, unmapped_reads) %>%
  pivot_longer(-sample) %>%
  mutate(name=factor(name,levels=c("low_quality","mapped_lizard","unmapped_reads","mapped_mags"))) %>%
  left_join(., sample_metadata, by = join_by(sample == Tube_code)) %>%
  filter(!is.na(time_point)) %>%
  ggplot(aes(x = sample, y = value, fill = name)) +
      geom_bar(stat = "identity", position = "fill") +
      scale_fill_manual(name="Sequence type",
                    breaks=c("low_quality","mapped_lizard","unmapped_reads","mapped_mags"),
                    labels=c("Low quality","Mapped to host","Unmapped","Mapped to MAGs"),
                    values=c("#CCCCCC", "#bcdee1", "#d8b8a3","#93655c"))+
      facet_grid(~factor(time_point, level=c("Wild", "Acclimation", "Antibiotics", "Inoculum1", "Inoculum2", "FMT1", "FMT2")), 
             scales = "free") +
      theme_minimal() +
      theme(axis.text.x = element_text(angle = 90, hjust = 1, size=0)) +
      labs(y="DNA sequence fraction",x="Samples")

3.3 Recovered microbial fraction

data_stats_filter %>%
  mutate(
    unmapped_reads = trimmed_reads - mapped_lizard - mapped_mags,
    mag_proportion = mapped_mags / (mapped_mags + unmapped_reads),
    singlem_read_fraction = singlem_read_fraction
  ) %>%
  select(sample, mag_proportion, singlem_read_fraction) %>%
  mutate(
    mag_proportion = if_else(singlem_read_fraction == 0, 0, mag_proportion),
    singlem_read_fraction = if_else(singlem_read_fraction == 0, NA, singlem_read_fraction),
    singlem_read_fraction = if_else(singlem_read_fraction < mag_proportion, NA, singlem_read_fraction),
    singlem_read_fraction = if_else(singlem_read_fraction > 1, 1, singlem_read_fraction)
  ) %>%
  pivot_longer(-sample, names_to = "proportion", values_to = "value") %>%
  mutate(
    proportion = factor(
      proportion,
      levels = c("mag_proportion", "singlem_read_fraction")
    )
  ) %>%
  left_join(., sample_metadata, by = join_by(sample == Tube_code)) %>%
  filter(!is.na(time_point)) %>%
  ggplot(aes(x = sample, y = value, color = proportion)) +
      geom_line(aes(group = sample), color = "#f8a538") +
      geom_point() +
      scale_color_manual(name="Proportion",
                    breaks=c("mag_proportion","singlem_read_fraction"),
                    labels=c("Recovered","Estimated"),
                    values=c("#52e1e8", "#876b53"))+
      theme_minimal() +
      facet_grid(~factor(time_point, level=c("Wild", "Acclimation", "Antibiotics", "Inoculum1", "Inoculum2", "FMT1", "FMT2")), 
             scales = "free") +
      labs(y = "Samples", x = "Prokaryotic fraction") +
      scale_y_continuous(limits = c(0, 1)) +
      theme(
        axis.text.y = element_text(size = 4),
        axis.text.x = element_text( angle = 90, vjust = 0.5, hjust = 1, size = 0),
        legend.position = "right"
      )

3.3.1 Domain-adjusted mapping rate (DAMR)

data_stats_filter %>%
  mutate(
    unmapped_reads = trimmed_reads - mapped_lizard - mapped_mags,
    mag_proportion = mapped_mags / (mapped_mags + unmapped_reads),
    singlem_read_fraction = singlem_read_fraction
  ) %>%
  mutate(damr=pmin(1, mag_proportion/singlem_read_fraction)) %>%
  filter(!is.na(time_point)) %>%
  select(sample,damr, time_point, Population, type) %>%
  tt()
sample damr time_point Population type
AC79 1.0000000 Acclimation Cold Cold_control
AC80 1.0000000 Acclimation Cold Cold_intervention
AC81 0.9813013 Acclimation Cold Cold_intervention
AC82 0.7490771 Acclimation Cold Cold_intervention
AC83 1.0000000 Acclimation Cold Cold_control
AC84 1.0000000 Acclimation Cold Cold_control
AC86 0.8800275 Acclimation Cold Cold_control
AC87 0.9672854 Acclimation Cold Cold_intervention
AC88 0.3142108 Acclimation Cold Cold_control
AC89 0.9338962 Acclimation Cold Cold_intervention
AC90 1.0000000 Acclimation Cold Cold_control
AC91 1.0000000 Acclimation Cold Cold_control
AC92 1.0000000 Acclimation Cold Cold_control
AC93 1.0000000 Acclimation Cold Cold_intervention
AC94 0.9159348 Acclimation Cold Cold_intervention
AC95 0.9239904 Acclimation Cold Cold_intervention
AC96 0.9425962 Acclimation Cold Cold_intervention
AC97 0.9394886 Acclimation Warm Warm_control
AC98 1.0000000 Acclimation Warm Warm_control
AC99 1.0000000 Acclimation Warm Warm_control
AD01 1.0000000 Acclimation Warm Warm_control
AD02 1.0000000 Acclimation Warm Warm_control
AD03 1.0000000 Acclimation Warm Warm_control
AD04 0.8896057 Acclimation Warm Warm_control
AD05 1.0000000 Acclimation Warm Warm_control
AD07 0.9515379 Acclimation Warm Warm_control
AD08 0.7045003 Antibiotics Cold Cold_control
AD09 1.0000000 Antibiotics Cold Cold_control
AD10 0.9598720 Antibiotics Cold Cold_control
AD11 0.6230176 Antibiotics Cold Cold_control
AD12 0.7487463 Antibiotics Cold Cold_control
AD13 1.0000000 Antibiotics Cold Cold_control
AD14 0.4536529 Antibiotics Cold Cold_control
AD15 1.0000000 Antibiotics Cold Cold_control
AD17 0.8774871 Antibiotics Cold Cold_intervention
AD18 0.4991585 Antibiotics Cold Cold_intervention
AD19 0.4060523 Antibiotics Cold Cold_intervention
AD20 0.5227482 Antibiotics Cold Cold_intervention
AD21 0.6551882 Antibiotics Cold Cold_intervention
AD22 0.9106725 Antibiotics Cold Cold_intervention
AD24 0.5972915 Antibiotics Cold Cold_intervention
AD26 0.9204825 Antibiotics Warm Warm_control
AD27 0.5215059 Antibiotics Warm Warm_control
AD28 0.8180607 Antibiotics Warm Warm_control
AD29 0.7175978 Antibiotics Warm Warm_control
AD30 0.9937574 Antibiotics Warm Warm_control
AD32 0.6710817 Antibiotics Warm Warm_control
AD33 0.6778368 Antibiotics Warm Warm_control
AD34 0.4642326 Antibiotics Warm Warm_control
AD36 0.8288365 Inoculum1 Cold Cold_control
AD37 0.9530848 Inoculum1 Cold Cold_control
AD38 0.9247925 Inoculum1 Cold Cold_control
AD39 1.0000000 Inoculum1 Cold Cold_control
AD40 0.9991552 Inoculum1 Cold Cold_control
AD41 0.9550964 Inoculum1 Cold Cold_control
AD42 1.0000000 Inoculum1 Cold Cold_control
AD43 1.0000000 Inoculum1 Cold Cold_control
AD44 0.9108807 Inoculum1 Cold Cold_control
AD46 0.8708468 Inoculum1 Cold Cold_intervention
AD47 0.8328653 Inoculum1 Cold Cold_intervention
AD49 0.8940294 Inoculum1 Cold Cold_intervention
AD50 0.8757711 Inoculum1 Cold Cold_intervention
AD51 0.8479193 Inoculum1 Cold Cold_intervention
AD52 0.8596870 Inoculum1 Cold Cold_intervention
AD53 0.8528974 Inoculum1 Cold Cold_intervention
AD54 1.0000000 Inoculum1 Warm Warm_control
AD55 1.0000000 Inoculum2 Cold Cold_control
AD56 0.9327538 Inoculum2 Cold Cold_control
AD57 1.0000000 Inoculum2 Cold Cold_control
AD58 1.0000000 Inoculum2 Cold Cold_control
AD59 1.0000000 Inoculum2 Cold Cold_control
AD60 0.7988844 Inoculum2 Cold Cold_control
AD61 1.0000000 Inoculum2 Cold Cold_control
AD62 1.0000000 Inoculum2 Cold Cold_control
AD63 0.8992048 Inoculum2 Cold Cold_control
AD65 1.0000000 Inoculum2 Cold Cold_intervention
AD66 0.8821027 Inoculum2 Cold Cold_intervention
AD68 0.8820274 Inoculum2 Cold Cold_intervention
AD70 0.9590793 Inoculum2 Cold Cold_intervention
AD71 0.8360540 Inoculum2 Cold Cold_intervention
AD72 0.8835253 Inoculum2 Cold Cold_intervention
AD73 1.0000000 Inoculum2 Warm Warm_control
AD74 0.9017271 FMT1 Cold Cold_control
AD75 1.0000000 FMT1 Cold Cold_intervention
AD76 0.9862581 FMT1 Cold Cold_intervention
AD77 0.8963376 FMT1 Cold Cold_intervention
AD78 1.0000000 FMT1 Cold Cold_intervention
AD79 1.0000000 FMT1 Cold Cold_control
AD80 0.8808155 FMT1 Cold Cold_intervention
AD81 1.0000000 FMT1 Cold Cold_control
AD82 1.0000000 FMT1 Cold Cold_control
AD83 1.0000000 FMT1 Cold Cold_intervention
AD84 1.0000000 FMT1 Cold Cold_intervention
AD85 1.0000000 FMT1 Cold Cold_control
AD86 0.9889084 FMT1 Cold Cold_control
AD87 1.0000000 FMT1 Cold Cold_control
AD88 1.0000000 FMT1 Cold Cold_intervention
AD89 0.9562489 FMT1 Cold Cold_control
AD90 1.0000000 FMT1 Cold Cold_control
AD93 1.0000000 FMT1 Warm Warm_control
AD94 0.7947750 FMT1 Warm Warm_control
AD95 0.9506977 FMT1 Warm Warm_control
AD96 0.9171413 FMT1 Warm Warm_control
AD97 0.9257685 FMT1 Warm Warm_control
AD98 0.9048349 FMT1 Warm Warm_control
AD99 0.9966152 FMT1 Warm Warm_control
AE01 1.0000000 FMT1 Warm Warm_control
AE02 1.0000000 FMT1 Warm Warm_control
AE04 1.0000000 FMT2 Cold Cold_intervention
AE05 1.0000000 FMT2 Cold Cold_intervention
AE06 1.0000000 FMT2 Cold Cold_control
AE07 0.7797794 FMT2 Cold Cold_control
AE08 1.0000000 FMT2 Cold Cold_control
AE09 1.0000000 FMT2 Cold Cold_control
AE91 0.9259146 FMT2 Cold Cold_intervention
AE92 1.0000000 FMT2 Cold Cold_control
AE93 1.0000000 FMT2 Cold Cold_control
AE94 0.9152960 FMT2 Cold Cold_intervention
AE95 1.0000000 FMT2 Cold Cold_intervention
AE96 0.7786112 FMT2 Cold Cold_intervention
AE97 0.9365037 FMT2 Cold Cold_control
AE98 1.0000000 FMT2 Cold Cold_control
AE99 0.8513354 FMT2 Cold Cold_intervention
AF01 0.9046369 FMT2 Cold Cold_intervention
AF02 1.0000000 FMT2 Cold Cold_control
AF03 0.9030087 FMT2 Cold Cold_intervention
AF04 1.0000000 FMT2 Warm Warm_control
AF05 1.0000000 FMT2 Warm Warm_control
AF06 1.0000000 FMT2 Warm Warm_control
AF07 0.9526443 FMT2 Warm Warm_control
AF08 1.0000000 FMT2 Warm Warm_control
AF09 1.0000000 FMT2 Warm Warm_control
AF10 0.9716162 FMT2 Warm Warm_control
AF11 0.9654152 FMT2 Warm Warm_control
AF13 0.8818742 FMT2 Warm Warm_control
AFU87 0.8810513 Wild Cold Cold_control
AFU88 0.8317800 Wild Cold Cold_intervention
AFU91 0.8923699 Wild Cold Cold_intervention
AFU92 0.8094776 Wild Cold Cold_intervention
AFU93 0.8517368 Wild Cold Cold_control
AFU94 0.8325385 Wild Cold Cold_intervention
AFU95 0.8419270 Wild Cold Cold_intervention
AFU96 0.8326820 Wild Cold Cold_control
AFU97 0.8107271 Wild Cold Cold_intervention
AFU98 0.7506522 Wild Cold Cold_control
AFU99 0.8582371 Wild Cold Cold_intervention
AFV01 0.9331539 Wild Cold Cold_intervention
AFV02 0.8316460 Wild Cold Cold_intervention
AFV03 0.8752591 Wild Cold Cold_control
AFV04 0.9180285 Wild Cold Cold_control
AFV05 1.0000000 Wild Cold Cold_control
AFV06 1.0000000 Wild Cold Cold_control
AFV07 0.8460805 Wild Cold Cold_control
AFV08 0.7497043 Wild Warm Warm_control
AFV09 0.5412999 Wild Warm Warm_control
AFV10 0.8002499 Wild Warm Warm_control
AFV11 0.8225298 Wild Warm Warm_control
AFV12 0.7925988 Wild Warm Warm_control
AFV14 0.8106269 Wild Warm Warm_control
AFV15 0.9691106 Wild Warm Warm_control
AFV16 0.8218990 Wild Warm Warm_control
AFV17 0.8091152 Wild Warm Warm_control