suppressPackageStartupMessages({
  library(covmuller)
  library(tidyverse)
})
theme_set(CovmullerTheme())
gisaid_metadata <- qs::qread(file = "~/data/epicov/metadata_tsv_2024_04_11.qs")
gisaid_india <- FilterGISAIDIndia(gisaid_metadata_all = gisaid_metadata)

Plot total sequenced cases

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

Plot stateswise sequenced cases

state_seq_stats <- TotalSequencesPerMonthStatewise(gisaid_india)
state_seq_stats_summary <- state_seq_stats %>%
  group_by(State) %>%
  summarise(value = sum(value))
state_seq_stats_summary$State[state_seq_stats_summary$State == "Dadra and Nagar Haveli and Daman and Diu"] <- "Dadra/N Haveli/Daman/Diu"
p1 <- BarPlot(state_seq_stats_summary, xaxis = "State", ylabel = "Total sequences deposited", color = "slateblue1", label_si = TRUE, xangle = 90, title = "India")
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_india_collapsed <- CollapseLineageToVOCs(
  variant_df = gisaid_india,
  vocs = vocs,
  custom_voc_mapping = custom_voc_mapping,
  summarize = FALSE
)

gisaid_india_collapsed_sel <- gisaid_india_collapsed %>%
  filter(MonthYearCollected >= "Oct 2022") %>%
  filter(lineage_collapsed != "Unassigned")
vocs_to_keep <- table(gisaid_india_collapsed_sel$lineage_collapsed)
vocs_to_keep <- vocs_to_keep[vocs_to_keep > 100]

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

gisaid_india_shared_dateweek <- SummarizeVariantsDatewise(gisaid_india_collapsed_sel, by_state = TRUE)
head(gisaid_india_shared_dateweek)
fit_india_multi_predsbystate <- FitMultinomStatewiseDaily(gisaid_india_shared_dateweek)
head(fit_india_multi_predsbystate)

Plot Smooth Muller Plots

muller_indiabystate_mfit <- PlotMullerDailyPrevalence(fit_india_multi_predsbystate)
muller_indiabystate_mfit


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