suppressPackageStartupMessages({
  library(covmuller)
  library(tidyverse)
})
theme_set(CovmullerTheme())
gisaid_metadata <- qs::qread(file = "~/data/epicov/metadata_tsv_2024_04_11.qs")
gisaid_southafrica <- gisaid_metadata %>%
  filter(Country == "South Africa") %>%
  filter(Host == "Human")
gisaid_southafrica <- FormatGISAIDMetadata(gisaid_southafrica)
gisaid_southafrica <- gisaid_southafrica %>%
  arrange(State, MonthYearCollected)
gisaid_southafrica$State <- CleanSouthAfricanStates(gisaid_southafrica$State)

Plot total sequenced cases

country_seq_stats <- TotalSequencesPerMonthCountrywise(gisaid_southafrica, rename_country_as_state = TRUE)
p0 <- BarPlot(country_seq_stats, ylabel = "Sequenced per month", color = "slateblue1", label_si = TRUE, xangle = 90, title = "South Africa")
p0

Plot stateswise sequenced cases

state_seq_stats <- TotalSequencesPerMonthStatewise(gisaid_southafrica)
state_seq_stats_summary <- state_seq_stats %>%
  group_by(State) %>%
  summarise(value = sum(value))
p1 <- BarPlot(state_seq_stats_summary, xaxis = "State", ylabel = "Sequenced per month", color = "slateblue1", label_si = TRUE, xangle = 90, title = "South Africa")
p1

Get VOCs

vocs <- GetVOCs()
omicron <- vocs[["omicron"]]
vocs[["omicron"]] <- NULL
custom_voc_mapping <- list(
  `BA.1.1` = "BA.1",
  `BA.1` = "BA.1",
  `BA.2` = "BA.2",
  `BA.2.10` = "BA.2.X",
  `BA.2.10.1` = "BA.2.X",
  `BA.2.12` = "BA.2.X",
  `BA.2.12.1` = "BA.2.X",
  `BA.3` = "BA.3",
  `BA.4` = "BA.4",
  `BA.5` = "BA.5",
  `BA.2.74` = "BA.2.X",
  `BA.2.75` = "BA.2.75",
  `BA.2.76` = "BA.2.X",
  `XBB.*` = "XBB",
  `BQ.1` = "BQ.1+",
  `BQ.1.*` = "BQ.1+"
)
gisaid_southafrica_collapsed <- CollapseLineageToVOCs(
  variant_df = gisaid_southafrica,
  vocs = vocs,
  custom_voc_mapping = custom_voc_mapping,
  summarize = FALSE
)

gisaid_southafrica_collapsed_sel <- gisaid_southafrica_collapsed %>%
  filter(MonthYearCollected >= "Oct 2022") %>%
  filter(lineage_collapsed != "Unassigned") %>%
  filter(State != "Unknown")

vocs_to_keep <- table(gisaid_southafrica_collapsed_sel$lineage_collapsed)
vocs_to_keep <- vocs_to_keep[vocs_to_keep > 50]

gisaid_southafrica_collapsed_sel <- gisaid_southafrica_collapsed_sel %>% filter(lineage_collapsed %in% names(vocs_to_keep))

gisaid_southafrica_shared_dateweek <- SummarizeVariantsDatewise(gisaid_southafrica_collapsed_sel, by_state = TRUE)
head(gisaid_southafrica_shared_dateweek)
fit_southafrica_multi_predsbystate <- FitMultinomStatewiseDaily(gisaid_southafrica_shared_dateweek)
head(fit_southafrica_multi_predsbystate)

Plot Smooth Muller Plots

muller_southafricabystate_mfit <- PlotMullerDailyPrevalence(fit_southafrica_multi_predsbystate, ncol = 3)
muller_southafricabystate_mfit


saketkc/covmuller documentation built on April 19, 2024, 10:14 a.m.