### read in data ###
FLU.IL <- read.csv("C:/Users/Lisa/Desktop/677/FLU/FLU.IL.csv", stringsAsFactors = FALSE)
### this is what the data looks like ###
head(FLU.IL)
## YEAR WEEK CASE
## 1 1919 1 -
## 2 1919 2 -
## 3 1919 3 -
## 4 1919 4 -
## 5 1919 5 -
## 6 1919 6 -
### change all unavailalble CASE data (-) to NA ###
for (i in 1:length(FLU.IL$CASE)) {
if (FLU.IL$CASE[i] == "-") {
FLU.IL$CASE[i] <- NA
}
}
FLU.IL$CASE <- as.numeric(FLU.IL$CASE)
FLU.IL$YEAR <- as.numeric(FLU.IL$YEAR)
FLU.IL$WEEK <- formatC(FLU.IL$WEEK, width = 2, flag = "0")
### this is what the data looks like now ###
head(FLU.IL)
## YEAR WEEK CASE
## 1 1919 01 NA
## 2 1919 02 NA
## 3 1919 03 NA
## 4 1919 04 NA
## 5 1919 05 NA
## 6 1919 06 NA
### create an ID for YEAR & WEEK together - YEAR.WEEK ###
YR.WK <- as.character(paste(FLU.IL[, 1], FLU.IL[, 2], sep = "."))
FLU.IL <- data.frame(FLU.IL, YR.WK)
### find yearly CASE totals ###
FLU.ILs <- as.array(split(FLU.IL, FLU.IL$YEAR))
CASE.YR <- rep(NA, length(unique(FLU.IL$YEAR)))
for (i in 1:length(unique(FLU.IL$YEAR))) {
CASE.YR[i] <- sum(FLU.ILs[[i]][, 3], na.rm = TRUE)
}
CASE.YR <- data.frame(YEAR = c(min(FLU.IL$YEAR):max(FLU.IL$YEAR)), CASE.YR)
### Merge data into one dataframe containing weekly and yearly CASE
### numbers ### CASE.YR is total of CASEs for that year ###
FLU.IL <- merge(FLU.IL, CASE.YR)
head(FLU.IL, 106)
## YEAR WEEK CASE YR.WK CASE.YR
## 1 1919 01 NA 1919.01 507
## 2 1919 02 NA 1919.02 507
## 3 1919 03 NA 1919.03 507
## 4 1919 04 NA 1919.04 507
## 5 1919 05 NA 1919.05 507
## 6 1919 06 NA 1919.06 507
## 7 1919 07 NA 1919.07 507
## 8 1919 08 NA 1919.08 507
## 9 1919 09 NA 1919.09 507
## 10 1919 10 NA 1919.10 507
## 11 1919 11 NA 1919.11 507
## 12 1919 12 NA 1919.12 507
## 13 1919 13 NA 1919.13 507
## 14 1919 14 NA 1919.14 507
## 15 1919 15 NA 1919.15 507
## 16 1919 16 NA 1919.16 507
## 17 1919 17 NA 1919.17 507
## 18 1919 18 NA 1919.18 507
## 19 1919 19 NA 1919.19 507
## 20 1919 20 NA 1919.20 507
## 21 1919 21 NA 1919.21 507
## 22 1919 22 NA 1919.22 507
## 23 1919 23 NA 1919.23 507
## 24 1919 24 NA 1919.24 507
## 25 1919 25 NA 1919.25 507
## 26 1919 26 NA 1919.26 507
## 27 1919 27 NA 1919.27 507
## 28 1919 28 NA 1919.28 507
## 29 1919 29 NA 1919.29 507
## 30 1919 30 NA 1919.30 507
## 31 1919 31 NA 1919.31 507
## 32 1919 32 NA 1919.32 507
## 33 1919 33 NA 1919.33 507
## 34 1919 34 NA 1919.34 507
## 35 1919 35 NA 1919.35 507
## 36 1919 36 NA 1919.36 507
## 37 1919 37 NA 1919.37 507
## 38 1919 38 NA 1919.38 507
## 39 1919 39 NA 1919.39 507
## 40 1919 40 NA 1919.40 507
## 41 1919 41 NA 1919.41 507
## 42 1919 42 NA 1919.42 507
## 43 1919 43 NA 1919.43 507
## 44 1919 44 60 1919.44 507
## 45 1919 45 56 1919.45 507
## 46 1919 46 57 1919.46 507
## 47 1919 47 NA 1919.47 507
## 48 1919 48 53 1919.48 507
## 49 1919 49 76 1919.49 507
## 50 1919 50 54 1919.50 507
## 51 1919 51 37 1919.51 507
## 52 1919 52 54 1919.52 507
## 53 1919 53 60 1919.53 507
## 54 1920 01 73 1920.01 3324
## 55 1920 02 3251 1920.02 3324
## 56 1920 03 NA 1920.03 3324
## 57 1920 04 NA 1920.04 3324
## 58 1920 05 NA 1920.05 3324
## 59 1920 06 NA 1920.06 3324
## 60 1920 07 NA 1920.07 3324
## 61 1920 08 NA 1920.08 3324
## 62 1920 09 NA 1920.09 3324
## 63 1920 10 NA 1920.10 3324
## 64 1920 11 NA 1920.11 3324
## 65 1920 12 NA 1920.12 3324
## 66 1920 13 NA 1920.13 3324
## 67 1920 14 NA 1920.14 3324
## 68 1920 15 NA 1920.15 3324
## 69 1920 16 NA 1920.16 3324
## 70 1920 17 NA 1920.17 3324
## 71 1920 18 NA 1920.18 3324
## 72 1920 19 NA 1920.19 3324
## 73 1920 20 NA 1920.20 3324
## 74 1920 21 NA 1920.21 3324
## 75 1920 22 NA 1920.22 3324
## 76 1920 23 NA 1920.23 3324
## 77 1920 24 NA 1920.24 3324
## 78 1920 25 NA 1920.25 3324
## 79 1920 26 NA 1920.26 3324
## 80 1920 27 NA 1920.27 3324
## 81 1920 28 NA 1920.28 3324
## 82 1920 29 NA 1920.29 3324
## 83 1920 30 NA 1920.30 3324
## 84 1920 31 NA 1920.31 3324
## 85 1920 32 NA 1920.32 3324
## 86 1920 33 NA 1920.33 3324
## 87 1920 34 NA 1920.34 3324
## 88 1920 35 NA 1920.35 3324
## 89 1920 36 NA 1920.36 3324
## 90 1920 37 NA 1920.37 3324
## 91 1920 38 NA 1920.38 3324
## 92 1920 39 NA 1920.39 3324
## 93 1920 40 NA 1920.40 3324
## 94 1920 41 NA 1920.41 3324
## 95 1920 42 NA 1920.42 3324
## 96 1920 43 NA 1920.43 3324
## 97 1920 44 NA 1920.44 3324
## 98 1920 45 NA 1920.45 3324
## 99 1920 46 NA 1920.46 3324
## 100 1920 47 NA 1920.47 3324
## 101 1920 48 NA 1920.48 3324
## 102 1920 49 NA 1920.49 3324
## 103 1920 50 NA 1920.50 3324
## 104 1920 51 NA 1920.51 3324
## 105 1920 52 NA 1920.52 3324
## 106 1921 01 NA 1921.01 0
### create plots of weekly and yearly CASE numbers in 'lattice' ###
require(lattice)
## Loading required package: lattice
plot.wk <- barchart(CASE ~ YR.WK, data = FLU.IL, horizontal = FALSE, xlab = "WEEK")
plot.yr <- barchart(CASE.YR ~ YEAR, data = FLU.IL, horizontal = FALSE, col = "black",
xlab = "YEAR")
print(plot.wk, position = c(0.01, 0.47, 0.65, 0.99), more = TRUE)
print(plot.yr, position = c(0.01, 0, 0.65, 0.5), more = FALSE)
### same plots plotted using 'plot' ###
par(mfrow = c(2, 1), mar = c(4, 4, 1, 1))
plot(FLU.IL$YR.WK, FLU.IL$CASE, type = "p", pch = ".", xlab = "WEEK")
plot(FLU.IL$YEAR, FLU.IL$CASE.YR, type = "b", pch = 16, xlab = "YEAR")
### split the data by year and plot CASE numbers by week for each year ###
### note that CASEs for each month are NOT plotted on the same scale ###
FLU.ILc <- FLU.IL[complete.cases(FLU.IL), ]
FLU.ILcs <- as.array(split(FLU.ILc, FLU.ILc$YEAR))
par(mfrow = c(1, 1))
for (i in 1:length(unique(FLU.ILc$YEAR))) {
plot(FLU.ILcs[[i]][, 2], FLU.ILcs[[i]][, 3], type = "b", xlab = FLU.ILcs[[i]][1,
1], ylab = "Cases", pch = 16)
}