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