Rmd source

Dane

Dane dla CZ pochodzą ze strony https://onemocneni-aktualne.mzcr.cz/api/v2/covid-19/umrti.csv. W przypadku PL nie ma danych od 3.10.2020. Wcześniej były ujawniane w formie komunikatów na Twiterze (sic!)

W obu przypadkach stosowne pliki CSV zawierają dane indywidualne dotyczące każdego zgonu w tym datę i wiek.

Dane indywidualne są zamieniane na dane dzienne (agregowane); dla danych dziennych liczona jest ich liczba, średni wiek zmarłych oraz pierwszy kwarty wieku.

## Dane z CSV
u0 <- read.csv(file='umerti.csv',sep=',',header=T)
## liczba zgonów i średnia
u <- u0 %>% group_by(data) %>% summarise(id='CZ', n=n(),
                                          ma=mean(wiek, na.rm=T),
                                         d1=quantile(wiek, 0.10),
                                          q1=quantile(wiek, 0.25)) 
#zgony_cz <- u %>% select(d,n)
## Zgony w PL 
z0 <- read.csv(file='C19PL_zgony_wiek.csv',sep=';',header=T)
z <- z0 %>% group_by(data) %>% summarise(id='PL', n=n(),
                                          ma=mean(wiek, na.rm=T),
                                         d1=quantile(wiek, 0.10),
                                         q1=quantile(wiek, 0.25))  
  
## łączymy

plcz <- bind_rows(u, z)

Średni wiek zmarłych

## wykres
mainBreaks <- "4 weeks"
maxCC <- max(plcz$ma)
labTxt <- "loess smoothing with span = 0.25"
fstDay <- as.Date("2020-09-15")
note <- "© NI-KW  (source: twitter.com/MZ_GOV_PL and koronavirus.mzcr.cz/)"
last.obs <- last (plcz$date)
first.obs <- first (plcz$date)

p1 <- ggplot(plcz, aes(x= as.Date(data, format="%Y-%m-%d"), 
                       y=ma, colour = id, group=id)) +
  geom_smooth(method="loess", se=F, span=spanV) +
  geom_point(size=.4, alpha=.5) +
  xlab(label="") +
  ylab(label="Age/Wiek") +
  scale_x_date( labels = date_format("%m/%d"), breaks = mainBreaks) +
  scale_y_continuous(breaks=seq(0,150, by=5)) +
  geom_hline(yintercept = 80, color="red", alpha=.25, size=1.2) +
  geom_hline(yintercept = 65, color="red", alpha=.25, size=1.2) +
  annotate("text", x = fstDay, y = maxCC, label = labTxt, hjust = 0, size=3, alpha=.3) +
  scale_color_manual(values = c("deeppink", "steelblue4")) +
  ggtitle("COVID19: mean age of fatalities (daily)", subtitle=note)

p1

Do momentu kiedy polskie dane były publikowane wartość średniej w obu krajach była na podobnym poziomie. Przypuszczalnie tak jest nadal…

Pierwszy kwartyl wieku zmarłych

p2 <- ggplot(plcz, aes(x= as.Date(data, format="%Y-%m-%d"))) +
  geom_point(aes(y=q1, colour = id, group=id), size=.4, alpha=.5) +
  geom_smooth(aes(y=q1, colour = id, group=id), method="loess", se=F, span=spanV) +
  ## za dużo MA
  ##geom_point(aes(y=d1, colour = id, group=id), size=.4, alpha=.5) +
  ##geom_smooth(aes(y=d1, colour = id, group=id), method="loess", se=F, span=spanV) +
  ##
  xlab(label="") +
  ylab(label="Age/Wiek") +
  scale_x_date( labels = date_format("%m/%d"), breaks = mainBreaks) +
  scale_y_continuous(breaks=seq(0,150, by=5)) +
  geom_hline(yintercept = 80, color="red", alpha=.25, size=1.2) +
  geom_hline(yintercept = 65, color="red", alpha=.25, size=1.2) +
  annotate("text", x = fstDay, y = maxCC, label = labTxt, hjust = 0, size=3, alpha=.3) +
  scale_color_manual(values = c("deeppink", "steelblue4")) +
  ggtitle("COVID19: mean age of fatalities (daily)", subtitle=note)
p2

Do momentu kiedy polskie dane były publikowane wartość pierwszego kwartyla w obu krajach była na podobnym poziomie. Przypuszczalnie tak jest nadal…

Liczba zmarłych

Liczba zmarłych na 1mln mieszkańców. Wielkość ta ulega dużym zmianom i nadal jest na dużo wyższym poziomie niż na początku października 2020, kiedy zaprzestano ujawniać dane nt. wieku w PL.

########### date/totald
## Policzymy na 1mln (2019, OECD)
popPl <- 37.972812
popCz <- 10.649800
  
u1 <- u %>% select(data, id, n) %>%
  mutate (n1m = n/popCz) %>% select(data, id, n, n1m)

z0 <- read.csv(file='MZN.csv',sep=';',header=T)
z <- z0 %>% dplyr::rename(data=date, n=newd) %>% 
  filter(woj == "Polska") %>%
  mutate (id='PL', n1m = n/popPl) %>% 
  select(data, id, n, n1m)

plcz <- bind_rows(u1, z)
max1M <- max(plcz$n1m)
p3 <- ggplot(plcz, aes(x= as.Date(data, format="%Y-%m-%d"), 
                       y=n1m, colour = id, group=id)) +
  geom_smooth(method="loess", se=F, span=spanV) +
  geom_point(size=.4, alpha=.5) +
  xlab(label="") +
  ylab(label="N") +
  scale_x_date( labels = date_format("%m/%d"), breaks = mainBreaks) +
  #scale_y_continuous(breaks=seq(0,500, by=50)) +
  ##geom_hline(yintercept = 80, color="red", alpha=.25, size=1.2) +
  ##geom_hline(yintercept = 10, color="red", alpha=.25, size=1.2) +
  annotate("text", x = fstDay, y = max1M, label = labTxt, hjust = 0, size=3, alpha=.3) +
  scale_color_manual(values = c("deeppink", "steelblue4")) +
  ggtitle(sprintf("COVID19: number of fatalities (daily)" ), subtitle=note)

p3

Łącznie średnia i liczba zmarłych

p13 <- ggarrange(p1,p3, ncol = 2)
p13