R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.1     ✔ stringr   1.5.2
## ✔ ggplot2   4.0.0     ✔ tibble    3.3.0
## ✔ lubridate 1.9.4     ✔ tidyr     1.3.1
## ✔ purrr     1.1.0     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(dplyr)
library(ggplot2)
     

canada_covid19_dataset <- read.csv("D:/2024-2025/georgebrown/2025-fall/Health Information and Data Analysis (4033)/Assign/Group 4/Oct 18/canada_covid19_dataset.csv", stringsAsFactors = FALSE)

Covid19_db <- canada_covid19_dataset


variable.names(Covid19_db)
##  [1] "pruid"               "prname"              "prnameFR"           
##  [4] "date"                "reporting_week"      "reporting_year"     
##  [7] "update"              "totalcases"          "numtotal_last7"     
## [10] "ratecases_total"     "numdeaths"           "numdeaths_last7"    
## [13] "ratedeaths"          "ratecases_last7"     "ratedeaths_last7"   
## [16] "numtotal_last14"     "numdeaths_last14"    "ratetotal_last14"   
## [19] "ratedeaths_last14"   "avgcases_last7"      "avgincidence_last7" 
## [22] "avgdeaths_last7"     "avgratedeaths_last7"
head(Covid19_db, 15)
##    pruid                    prname                  prnameFR       date
## 1     59          British Columbia      Colombie-Britannique 08-02-2020
## 2     48                   Alberta                   Alberta 08-02-2020
## 3     47              Saskatchewan              Saskatchewan 08-02-2020
## 4     46                  Manitoba                  Manitoba 08-02-2020
## 5     35                   Ontario                   Ontario 08-02-2020
## 6     24                    Quebec                    Québec 08-02-2020
## 7     10 Newfoundland and Labrador   Terre-Neuve-et-Labrador 08-02-2020
## 8     13             New Brunswick         Nouveau-Brunswick 08-02-2020
## 9     12               Nova Scotia           Nouvelle-Écosse 08-02-2020
## 10    11      Prince Edward Island     Île-du-Prince-Édouard 08-02-2020
## 11    60                     Yukon                     Yukon 08-02-2020
## 12    61     Northwest Territories Territoires du Nord-Ouest 08-02-2020
## 13    62                   Nunavut                   Nunavut 08-02-2020
## 14    99    Repatriated travellers       Voyageurs rapatriés 08-02-2020
## 15     1                    Canada                    Canada 08-02-2020
##    reporting_week reporting_year update totalcases numtotal_last7
## 1               6           2020      1          4              3
## 2               6           2020      1          0              0
## 3               6           2020      1          0              0
## 4               6           2020      1          0              0
## 5               6           2020      1          4              1
## 6               6           2020      1          0              0
## 7               6           2020      1          0              0
## 8               6           2020      1          0              0
## 9               6           2020      1          0              0
## 10              6           2020      1          0              0
## 11              6           2020      1          0              0
## 12              6           2020      1          0              0
## 13              6           2020      1          0              0
## 14              6           2020     NA          0              0
## 15              6           2020     NA          8              4
##    ratecases_total numdeaths numdeaths_last7 ratedeaths ratecases_last7
## 1             0.07         0               0          0            0.05
## 2                0         0               0          0               0
## 3                0         0               0          0               0
## 4                0         0               0          0               0
## 5             0.03         0               0          0            0.01
## 6                0         0               0          0               0
## 7                0         0               0          0               0
## 8                0         0               0          0               0
## 9                0         0               0          0               0
## 10               0         0               0          0               0
## 11               0         0               0          0               0
## 12               0         0               0          0               0
## 13               0         0               0          0               0
## 14                         0               0         NA                
## 15            0.02         0               0          0            0.01
##    ratedeaths_last7 numtotal_last14 numdeaths_last14 ratetotal_last14
## 1                 0               4                0             0.07
## 2                 0               0                0                0
## 3                 0               0                0                0
## 4                 0               0                0                0
## 5                 0               1                0             0.01
## 6                 0               0                0                0
## 7                 0               0                0                0
## 8                 0               0                0                0
## 9                 0               0                0                0
## 10                0               0                0                0
## 11                0               0                0                0
## 12                0               0                0                0
## 13                0               0                0                0
## 14               NA               0                0                 
## 15                0               5                0             0.01
##    ratedeaths_last14 avgcases_last7 avgincidence_last7 avgdeaths_last7
## 1                  0           0.43               0.01               0
## 2                  0              0                  0               0
## 3                  0              0                  0               0
## 4                  0              0                  0               0
## 5                  0           0.14                  0               0
## 6                  0              0                  0               0
## 7                  0              0                  0               0
## 8                  0              0                  0               0
## 9                  0              0                  0               0
## 10                 0              0                  0               0
## 11                 0              0                  0               0
## 12                 0              0                  0               0
## 13                 0              0                  0               0
## 14                NA              0                                  0
## 15                 0           0.57                  0               0
##    avgratedeaths_last7
## 1                    0
## 2                    0
## 3                    0
## 4                    0
## 5                    0
## 6                    0
## 7                    0
## 8                    0
## 9                    0
## 10                   0
## 11                   0
## 12                   0
## 13                   0
## 14                  NA
## 15                   0
Covid19_db <- Covid19_db %>%
  mutate(across(5:23, as.numeric))
## Warning: There were 8 warnings in `mutate()`.
## The first warning was:
## ℹ In argument: `across(5:23, as.numeric)`.
## Caused by warning:
## ! 강제형변환에 의해 생성된 NA 입니다
## ℹ Run `dplyr::last_dplyr_warnings()` to see the 7 remaining warnings.
str(Covid19_db)
## 'data.frame':    3630 obs. of  23 variables:
##  $ pruid              : int  59 48 47 46 35 24 10 13 12 11 ...
##  $ prname             : chr  "British Columbia" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ prnameFR           : chr  "Colombie-Britannique" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ date               : chr  "08-02-2020" "08-02-2020" "08-02-2020" "08-02-2020" ...
##  $ reporting_week     : num  6 6 6 6 6 6 6 6 6 6 ...
##  $ reporting_year     : num  2020 2020 2020 2020 2020 2020 2020 2020 2020 2020 ...
##  $ update             : num  1 1 1 1 1 1 1 1 1 1 ...
##  $ totalcases         : num  4 0 0 0 4 0 0 0 0 0 ...
##  $ numtotal_last7     : num  3 0 0 0 1 0 0 0 0 0 ...
##  $ ratecases_total    : num  0.07 0 0 0 0.03 0 0 0 0 0 ...
##  $ numdeaths          : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratedeaths         : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratecases_last7    : num  0.05 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last7   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numtotal_last14    : num  4 0 0 0 1 0 0 0 0 0 ...
##  $ numdeaths_last14   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratetotal_last14   : num  0.07 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last14  : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgcases_last7     : num  0.43 0 0 0 0.14 0 0 0 0 0 ...
##  $ avgincidence_last7 : num  0.01 0 0 0 0 0 0 0 0 0 ...
##  $ avgdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgratedeaths_last7: num  0 0 0 0 0 0 0 0 0 0 ...
Covid19_db$date <- as.Date(Covid19_db$date, format = "%d-%m-%Y")
str(Covid19_db)
## 'data.frame':    3630 obs. of  23 variables:
##  $ pruid              : int  59 48 47 46 35 24 10 13 12 11 ...
##  $ prname             : chr  "British Columbia" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ prnameFR           : chr  "Colombie-Britannique" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ date               : Date, format: "2020-02-08" "2020-02-08" ...
##  $ reporting_week     : num  6 6 6 6 6 6 6 6 6 6 ...
##  $ reporting_year     : num  2020 2020 2020 2020 2020 2020 2020 2020 2020 2020 ...
##  $ update             : num  1 1 1 1 1 1 1 1 1 1 ...
##  $ totalcases         : num  4 0 0 0 4 0 0 0 0 0 ...
##  $ numtotal_last7     : num  3 0 0 0 1 0 0 0 0 0 ...
##  $ ratecases_total    : num  0.07 0 0 0 0.03 0 0 0 0 0 ...
##  $ numdeaths          : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratedeaths         : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratecases_last7    : num  0.05 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last7   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numtotal_last14    : num  4 0 0 0 1 0 0 0 0 0 ...
##  $ numdeaths_last14   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratetotal_last14   : num  0.07 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last14  : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgcases_last7     : num  0.43 0 0 0 0.14 0 0 0 0 0 ...
##  $ avgincidence_last7 : num  0.01 0 0 0 0 0 0 0 0 0 ...
##  $ avgdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgratedeaths_last7: num  0 0 0 0 0 0 0 0 0 0 ...
avg_total_cases <- function(data, province_name, year) {
  data %>%
    filter(prname == province_name, format(date, "%Y") == year) %>%
    summarise(average_cases = mean(totalcases, na.rm = TRUE))
}

avg_total_cases(Covid19_db, "Ontario", "2021")
##   average_cases
## 1      486343.9
filtered_data <- Covid19_db %>% 
  filter(prname == "Quebec" & totalcases > 100000)

head(filtered_data)
##   pruid prname prnameFR       date reporting_week reporting_year update
## 1    24 Quebec   Québec 2020-11-07             45           2020      1
## 2    24 Quebec   Québec 2020-11-14             46           2020      1
## 3    24 Quebec   Québec 2020-11-21             47           2020      1
## 4    24 Quebec   Québec 2020-11-28             48           2020      1
## 5    24 Quebec   Québec 2020-12-05             49           2020      1
## 6    24 Quebec   Québec 2020-12-12             50           2020      1
##   totalcases numtotal_last7 ratecases_total numdeaths numdeaths_last7
## 1     107784           7824         1214.51      6077             131
## 2     116779           8995         1315.87      6272             195
## 3     124854           8075         1406.86      6453             181
## 4     133886           9032         1508.63      6638             185
## 5     144747          10861         1631.01      6864             226
## 6     156984          12237         1768.90      7100             236
##   ratedeaths ratecases_last7 ratedeaths_last7 numtotal_last14 numdeaths_last14
## 1      68.48           88.16             1.48           14497              270
## 2      70.67          101.36             2.20           16819              326
## 3      72.71           90.99             2.04           17070              376
## 4      74.80          101.77             2.08           17107              366
## 5      77.34          122.38             2.55           19893              411
## 6      80.00          137.89             2.66           23098              462
##   ratetotal_last14 ratedeaths_last14 avgcases_last7 avgincidence_last7
## 1           163.35              3.04        1117.71              12.59
## 2           189.52              3.67        1285.00              14.48
## 3           192.34              4.24        1153.57              13.00
## 4           192.76              4.12        1290.29              14.54
## 5           224.15              4.63        1551.57              17.48
## 6           260.27              5.21        1748.14              19.70
##   avgdeaths_last7 avgratedeaths_last7
## 1           18.71                0.21
## 2           27.86                0.31
## 3           25.86                0.29
## 4           26.43                0.30
## 5           32.29                0.36
## 6           33.71                0.38
reshaped_df <- Covid19_db %>%
 group_by(Totalcases= totalcases) %>%
  reframe(Provinces = prname,
            Date = date,
            Deaths = sum(numdeaths, na.rm=TRUE))
                 
print(reshaped_df)
## # A tibble: 3,630 × 4
##    Totalcases Provinces                 Date       Deaths
##         <dbl> <chr>                     <date>      <dbl>
##  1          0 Alberta                   2020-02-08      0
##  2          0 Saskatchewan              2020-02-08      0
##  3          0 Manitoba                  2020-02-08      0
##  4          0 Quebec                    2020-02-08      0
##  5          0 Newfoundland and Labrador 2020-02-08      0
##  6          0 New Brunswick             2020-02-08      0
##  7          0 Nova Scotia               2020-02-08      0
##  8          0 Prince Edward Island      2020-02-08      0
##  9          0 Yukon                     2020-02-08      0
## 10          0 Northwest Territories     2020-02-08      0
## # ℹ 3,620 more rows
Covid19_db<- na.omit(Covid19_db)
str(Covid19_db)
## 'data.frame':    2482 obs. of  23 variables:
##  $ pruid              : int  59 48 47 46 35 24 10 13 12 11 ...
##  $ prname             : chr  "British Columbia" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ prnameFR           : chr  "Colombie-Britannique" "Alberta" "Saskatchewan" "Manitoba" ...
##  $ date               : Date, format: "2020-02-08" "2020-02-08" ...
##  $ reporting_week     : num  6 6 6 6 6 6 6 6 6 6 ...
##  $ reporting_year     : num  2020 2020 2020 2020 2020 2020 2020 2020 2020 2020 ...
##  $ update             : num  1 1 1 1 1 1 1 1 1 1 ...
##  $ totalcases         : num  4 0 0 0 4 0 0 0 0 0 ...
##  $ numtotal_last7     : num  3 0 0 0 1 0 0 0 0 0 ...
##  $ ratecases_total    : num  0.07 0 0 0 0.03 0 0 0 0 0 ...
##  $ numdeaths          : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratedeaths         : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratecases_last7    : num  0.05 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last7   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ numtotal_last14    : num  4 0 0 0 1 0 0 0 0 0 ...
##  $ numdeaths_last14   : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ ratetotal_last14   : num  0.07 0 0 0 0.01 0 0 0 0 0 ...
##  $ ratedeaths_last14  : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgcases_last7     : num  0.43 0 0 0 0.14 0 0 0 0 0 ...
##  $ avgincidence_last7 : num  0.01 0 0 0 0 0 0 0 0 0 ...
##  $ avgdeaths_last7    : num  0 0 0 0 0 0 0 0 0 0 ...
##  $ avgratedeaths_last7: num  0 0 0 0 0 0 0 0 0 0 ...
##  - attr(*, "na.action")= 'omit' Named int [1:1148] 14 15 29 30 44 45 59 60 74 75 ...
##   ..- attr(*, "names")= chr [1:1148] "14" "15" "29" "30" ...
sum(duplicated(Covid19_db))
## [1] 0
duplicated(Covid19_db)
##    [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [37] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [49] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [61] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [73] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [85] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##   [97] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [109] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [121] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [133] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [145] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [157] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [169] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [181] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [193] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [205] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [217] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [229] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [241] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [253] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [265] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [277] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [289] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [301] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [313] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [325] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [337] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [349] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [361] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [373] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [385] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [397] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [409] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [421] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [433] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [445] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [457] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [469] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [481] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [493] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [505] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [517] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [529] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [541] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [553] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [565] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [577] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [589] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [601] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [613] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [625] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [637] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [649] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [661] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [673] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [685] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [697] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [709] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [721] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [733] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [745] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [757] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [769] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [781] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [793] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [805] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [817] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [829] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [841] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [853] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [865] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [877] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [889] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [901] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [913] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [925] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [937] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [949] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [961] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [973] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [985] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
##  [997] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1009] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1021] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1033] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1045] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1057] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1069] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1081] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1093] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1105] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1117] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1129] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1141] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1153] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1165] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1177] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1189] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1201] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1213] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1225] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1237] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1249] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1261] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1273] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1285] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1297] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1309] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1321] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1333] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1345] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1357] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1369] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1381] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1393] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1405] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1417] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1429] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1441] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1453] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1465] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1477] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1489] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1501] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1513] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1525] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1537] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1549] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1561] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1573] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1585] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1597] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1609] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1621] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1633] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1645] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1657] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1669] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1681] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1693] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1705] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1717] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1729] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1741] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1753] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1765] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1777] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1789] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1801] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1813] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1825] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1837] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1849] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1861] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1873] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1885] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1897] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1909] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1921] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1933] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1945] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1957] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1969] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1981] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [1993] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2005] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2017] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2029] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2041] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2053] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2065] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2077] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2089] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2101] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2113] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2125] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2137] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2149] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2161] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2173] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2185] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2197] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2209] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2221] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2233] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2245] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2257] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2269] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2281] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2293] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2305] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2317] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2329] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2341] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2353] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2365] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2377] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2389] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2401] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2413] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2425] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2437] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2449] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2461] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
## [2473] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
Covid19_db <- Covid19_db %>% arrange(desc(totalcases))
str(Covid19_db)
## 'data.frame':    2482 obs. of  23 variables:
##  $ pruid              : int  35 35 35 35 35 35 35 35 35 35 ...
##  $ prname             : chr  "Ontario" "Ontario" "Ontario" "Ontario" ...
##  $ prnameFR           : chr  "Ontario" "Ontario" "Ontario" "Ontario" ...
##  $ date               : Date, format: "2024-05-25" "2024-05-18" ...
##  $ reporting_week     : num  21 20 19 18 17 16 15 14 13 12 ...
##  $ reporting_year     : num  2024 2024 2024 2024 2024 ...
##  $ update             : num  1 1 1 1 1 1 1 1 1 1 ...
##  $ totalcases         : num  1719315 1718344 1717089 1716148 1715259 ...
##  $ numtotal_last7     : num  971 1255 941 889 739 ...
##  $ ratecases_total    : num  11015 11009 11001 10995 10989 ...
##  $ numdeaths          : num  18683 18665 18653 18642 18637 ...
##  $ numdeaths_last7    : num  18 12 11 5 10 14 11 9 7 8 ...
##  $ ratedeaths         : num  120 120 120 119 119 ...
##  $ ratecases_last7    : num  6.22 8.04 6.03 5.7 4.73 4.18 4.56 4.43 3.33 3.88 ...
##  $ ratedeaths_last7   : num  0.12 0.08 0.07 0.03 0.06 0.09 0.07 0.06 0.04 0.05 ...
##  $ numtotal_last14    : num  2226 2196 1830 1628 1392 ...
##  $ numdeaths_last14   : num  30 23 16 15 24 25 20 16 15 19 ...
##  $ ratetotal_last14   : num  14.26 14.07 11.72 10.43 8.92 ...
##  $ ratedeaths_last14  : num  0.19 0.15 0.1 0.1 0.15 0.16 0.13 0.1 0.1 0.12 ...
##  $ avgcases_last7     : num  139 179 134 127 106 ...
##  $ avgincidence_last7 : num  0.89 1.15 0.86 0.81 0.68 0.6 0.65 0.63 0.48 0.55 ...
##  $ avgdeaths_last7    : num  2.57 1.71 1.57 0.71 1.43 2 1.57 1.29 1 1.14 ...
##  $ avgratedeaths_last7: num  0.02 0.01 0.01 0 0.01 0.01 0.01 0.01 0.01 0.01 ...
##  - attr(*, "na.action")= 'omit' Named int [1:1148] 14 15 29 30 44 45 59 60 74 75 ...
##   ..- attr(*, "names")= chr [1:1148] "14" "15" "29" "30" ...
Covid19_db <- Covid19_db %>%
  rename(
    Province = prname,
    Total_Cases = totalcases,
    Total_Deaths = numdeaths
  )
str(Covid19_db)
## 'data.frame':    2482 obs. of  23 variables:
##  $ pruid              : int  35 35 35 35 35 35 35 35 35 35 ...
##  $ Province           : chr  "Ontario" "Ontario" "Ontario" "Ontario" ...
##  $ prnameFR           : chr  "Ontario" "Ontario" "Ontario" "Ontario" ...
##  $ date               : Date, format: "2024-05-25" "2024-05-18" ...
##  $ reporting_week     : num  21 20 19 18 17 16 15 14 13 12 ...
##  $ reporting_year     : num  2024 2024 2024 2024 2024 ...
##  $ update             : num  1 1 1 1 1 1 1 1 1 1 ...
##  $ Total_Cases        : num  1719315 1718344 1717089 1716148 1715259 ...
##  $ numtotal_last7     : num  971 1255 941 889 739 ...
##  $ ratecases_total    : num  11015 11009 11001 10995 10989 ...
##  $ Total_Deaths       : num  18683 18665 18653 18642 18637 ...
##  $ numdeaths_last7    : num  18 12 11 5 10 14 11 9 7 8 ...
##  $ ratedeaths         : num  120 120 120 119 119 ...
##  $ ratecases_last7    : num  6.22 8.04 6.03 5.7 4.73 4.18 4.56 4.43 3.33 3.88 ...
##  $ ratedeaths_last7   : num  0.12 0.08 0.07 0.03 0.06 0.09 0.07 0.06 0.04 0.05 ...
##  $ numtotal_last14    : num  2226 2196 1830 1628 1392 ...
##  $ numdeaths_last14   : num  30 23 16 15 24 25 20 16 15 19 ...
##  $ ratetotal_last14   : num  14.26 14.07 11.72 10.43 8.92 ...
##  $ ratedeaths_last14  : num  0.19 0.15 0.1 0.1 0.15 0.16 0.13 0.1 0.1 0.12 ...
##  $ avgcases_last7     : num  139 179 134 127 106 ...
##  $ avgincidence_last7 : num  0.89 1.15 0.86 0.81 0.68 0.6 0.65 0.63 0.48 0.55 ...
##  $ avgdeaths_last7    : num  2.57 1.71 1.57 0.71 1.43 2 1.57 1.29 1 1.14 ...
##  $ avgratedeaths_last7: num  0.02 0.01 0.01 0 0.01 0.01 0.01 0.01 0.01 0.01 ...
##  - attr(*, "na.action")= 'omit' Named int [1:1148] 14 15 29 30 44 45 59 60 74 75 ...
##   ..- attr(*, "names")= chr [1:1148] "14" "15" "29" "30" ...
Covid19_db <- Covid19_db %>%
  mutate(Double_Cases = Total_Cases * 2)

set.seed(111)
train_rows <- sample(1:nrow(Covid19_db), 0.7 * nrow(Covid19_db))
training_set <- Covid19_db[train_rows, ]

summary(Covid19_db)
##      pruid         Province           prnameFR              date           
##  Min.   :10.00   Length:2482        Length:2482        Min.   :2020-02-08  
##  1st Qu.:13.00   Class :character   Class :character   1st Qu.:2021-01-02  
##  Median :46.00   Mode  :character   Mode  :character   Median :2021-12-04  
##  Mean   :35.92                                         Mean   :2022-01-09  
##  3rd Qu.:48.00                                         3rd Qu.:2022-12-10  
##  Max.   :62.00                                         Max.   :2024-05-25  
##  reporting_week  reporting_year     update   Total_Cases      numtotal_last7  
##  Min.   : 1.00   Min.   :2020   Min.   :1   Min.   :      0   Min.   :     0  
##  1st Qu.:13.00   1st Qu.:2020   1st Qu.:1   1st Qu.:   1141   1st Qu.:    25  
##  Median :25.00   Median :2021   Median :1   Median :  56413   Median :   310  
##  Mean   :25.66   Mean   :2022   Mean   :1   Mean   : 246615   Mean   :  1994  
##  3rd Qu.:39.00   3rd Qu.:2022   3rd Qu.:1   3rd Qu.: 243424   3rd Qu.:  1519  
##  Max.   :53.00   Max.   :2024   Max.   :1   Max.   :1719315   Max.   :108671  
##  ratecases_total    Total_Deaths     numdeaths_last7    ratedeaths     
##  Min.   :    0.0   Min.   :    0.0   Min.   : -1.00   Min.   :  0.000  
##  1st Qu.:  200.3   1st Qu.:   10.0   1st Qu.:  0.00   1st Qu.:  3.397  
##  Median : 4390.8   Median :  474.5   Median :  4.00   Median : 46.915  
##  Mean   : 6368.4   Mean   : 3121.9   Mean   : 23.93   Mean   : 59.915  
##  3rd Qu.:10763.6   3rd Qu.: 3559.0   3rd Qu.: 23.00   3rd Qu.:105.085  
##  Max.   :33703.3   Max.   :20100.0   Max.   :838.00   Max.   :226.490  
##  ratecases_last7   ratedeaths_last7  numtotal_last14  numdeaths_last14 
##  Min.   :   0.00   Min.   :-0.0800   Min.   :     0   Min.   :  -1.00  
##  1st Qu.:   4.08   1st Qu.: 0.0000   1st Qu.:    54   1st Qu.:   0.00  
##  Median :  17.60   Median : 0.2500   Median :   618   Median :   9.00  
##  Mean   :  75.46   Mean   : 0.5788   Mean   :  3986   Mean   :  47.79  
##  3rd Qu.:  66.64   3rd Qu.: 0.7600   3rd Qu.:  3058   3rd Qu.:  47.00  
##  Max.   :2132.44   Max.   :11.2600   Max.   :211900   Max.   :1587.00  
##  ratetotal_last14   ratedeaths_last14 avgcases_last7      avgincidence_last7
##  Min.   :   0.000   Min.   :-0.080    Min.   :    0.000   Min.   :  0.000   
##  1st Qu.:   8.715   1st Qu.: 0.000    1st Qu.:    3.575   1st Qu.:  0.580   
##  Median :  34.550   Median : 0.580    Median :   44.290   Median :  2.515   
##  Mean   : 150.797   Mean   : 1.150    Mean   :  284.823   Mean   : 10.779   
##  3rd Qu.: 133.317   3rd Qu.: 1.617    3rd Qu.:  217.015   3rd Qu.:  9.518   
##  Max.   :4142.580   Max.   :17.880    Max.   :15524.430   Max.   :304.540   
##  avgdeaths_last7   avgratedeaths_last7  Double_Cases    
##  Min.   : -0.140   Min.   :-0.01000    Min.   :      0  
##  1st Qu.:  0.000   1st Qu.: 0.00000    1st Qu.:   2282  
##  Median :  0.570   Median : 0.04000    Median : 112825  
##  Mean   :  3.419   Mean   : 0.08264    Mean   : 493230  
##  3rd Qu.:  3.290   3rd Qu.: 0.11000    3rd Qu.: 486848  
##  Max.   :119.710   Max.   : 1.61000    Max.   :3438630
mean(Covid19_db$Total_Cases, na.rm = TRUE)
## [1] 246615
median(Covid19_db$Total_Cases, na.rm = TRUE)
## [1] 56412.5
Mode <- as.numeric(names(sort(table(Covid19_db$Total_Cases), decreasing = TRUE)[1]))
Range <- range(Covid19_db$Total_Cases, na.rm = TRUE)

cat("Mode:", Mode, "\n")
## Mode: 0
cat("Range:", Range, "\n")
## Range: 0 1719315

Including Plots

You can also embed plots, for example:

library(ggpubr)
ggscatter(Covid19_db, x = "Total_Cases", y = "Total_Deaths",
          color = "Province",
          palette = "jco",
          add = "reg.line", conf.int = TRUE,
          cor.coef = TRUE, cor.method = "pearson",
          xlab = "Total COVID-19 Cases", ylab = "Total Deaths")

# Aggregate total cases by province
Covid19_summary <- Covid19_db %>%
  group_by(Province) %>%
  summarise(Total_Cases = sum(Total_Cases, na.rm = TRUE))

# Plot
ggbarplot(Covid19_summary, x = "Province", y = "Total_Cases",
          fill = "Province",
          palette = get_palette("Set3", length(unique(Covid19_summary$Province))),
          sort.val = "desc", rotate = TRUE,
          xlab = "Province", ylab = "Total Reported Cases (Millions)",
          title = "Total COVID-19 Cases by Province",
          subtitle = "Cumulative totals (2020–2024)") +
  scale_y_continuous(labels = function(x) paste0(x / 1e6, "M")) +
  theme_minimal()

# Run the correlation test
cor_result <- cor.test(Covid19_db$Total_Cases, Covid19_db$Total_Deaths, method = "pearson", use = "complete.obs")

# Extract the correlation coefficient
correlation_value <- cor_result$estimate

# Print the result
cat("Pearson Correlation between cases and deaths:", round(correlation_value, 3), "\n")
## Pearson Correlation between cases and deaths: 0.96

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.