1 Aineisto ja menetelmät

1.1 THL:n julkaisemat tiedot

THL julkaisi koronaepidemioan malleissa käyttämänsä parametrit, joihin kuului mm. koronaviruksen aiheuttaman sairastumisen kuolleisuus (Taulukko 2.).

THL julkaisee myös väestötutkimuksen koronavirusvasta-ainetuloksia viikoittain.

Vasta-aine tiutkimuksen otokseen otetaan suomea, ruotsia, venäjää ja englanti äidinkielenään puhuvia. Valinta on hieman erikoinen, koska eestiä, arabiaa, ja somaliaa äidinkielenään puhuvia on enemmän kuin englanninkielisiä. Vaikuttaakin siltä, että jostain syystä eräät suuret maahanmuuttajaryhmät on jätetty otoksen ulkopuolelle.

1.2 Suomen ikärakenne

# tmp.dt<-read.table(file=pipe("pbpaste"),header = TRUE)
# Suomi.Ika<-tmp.dt[,c(1:4,6)]
# dput(Suomi.Ika)

Suomi.Ika<-structure(list(Ikä = 0:99, Miehet = c(23250L, 24875L, 26172L, 
27485L, 29102L, 30190L, 30883L, 31432L, 31673L, 32476L, 32120L, 
31792L, 31546L, 31553L, 30701L, 31040L, 30198L, 29903L, 30151L, 
30938L, 31485L, 30790L, 31874L, 33138L, 34392L, 35532L, 35697L, 
37344L, 36978L, 37541L, 36759L, 36808L, 35202L, 35670L, 36676L, 
37645L, 38241L, 38111L, 36144L, 35981L, 35351L, 35613L, 35711L, 
35973L, 35280L, 33254L, 30548L, 31452L, 31889L, 32839L, 33666L, 
35728L, 36548L, 36619L, 36621L, 37191L, 37388L, 36942L, 36360L, 
35838L, 35523L, 34157L, 35394L, 35965L, 35244L, 34516L, 34069L, 
35021L, 33510L, 34159L, 34694L, 34711L, 33897L, 32161L, 28234L, 
21728L, 20191L, 15599L, 21814L, 14655L, 15989L, 14794L, 12781L, 
11191L, 10385L, 8832L, 7406L, 6628L, 5941L, 4926L, 3766L, 3094L, 
2150L, 1621L, 1158L, 835L, 517L, 264L, 180L, 111L), Naiset = c(22496L, 
23215L, 25099L, 26629L, 27601L, 28878L, 29204L, 30210L, 30448L, 
30893L, 30823L, 30423L, 30019L, 30217L, 29631L, 29432L, 29112L, 
28336L, 28788L, 28773L, 29311L, 29006L, 30337L, 31092L, 32519L, 
33784L, 33871L, 34985L, 34704L, 35249L, 34554L, 34626L, 32867L, 
33297L, 34309L, 35316L, 35982L, 35326L, 34217L, 33819L, 33705L, 
33521L, 34062L, 34023L, 33236L, 32022L, 28940L, 29955L, 31249L, 
32225L, 32673L, 35242L, 36023L, 36243L, 36431L, 37069L, 37433L, 
36938L, 36900L, 36812L, 36484L, 35296L, 36704L, 37620L, 37232L, 
37657L, 36657L, 37709L, 36261L, 37401L, 38385L, 38978L, 38511L, 
37331L, 32829L, 26262L, 24623L, 19583L, 28104L, 19618L, 22594L, 
20843L, 19077L, 17284L, 16458L, 14984L, 13044L, 12718L, 11574L, 
10813L, 9294L, 7600L, 6055L, 4775L, 3928L, 2801L, 2099L, 1439L, 
934L, 615L), Yht = c(45746L, 48090L, 51271L, 54114L, 56703L, 
59068L, 60087L, 61642L, 62121L, 63369L, 62943L, 62215L, 61565L, 
61770L, 60332L, 60472L, 59310L, 58239L, 58939L, 59711L, 60796L, 
59796L, 62211L, 64230L, 66911L, 69316L, 69568L, 72329L, 71682L, 
72790L, 71313L, 71434L, 68069L, 68967L, 70985L, 72961L, 74223L, 
73437L, 70361L, 69800L, 69056L, 69134L, 69773L, 69996L, 68516L, 
65276L, 59488L, 61407L, 63138L, 65064L, 66339L, 70970L, 72571L, 
72862L, 73052L, 74260L, 74821L, 73880L, 73260L, 72650L, 72007L, 
69453L, 72098L, 73585L, 72476L, 72173L, 70726L, 72730L, 69771L, 
71560L, 73079L, 73689L, 72408L, 69492L, 61063L, 47990L, 44814L, 
35182L, 49918L, 34273L, 38583L, 35637L, 31858L, 28475L, 26843L, 
23816L, 20450L, 19346L, 17515L, 15739L, 13060L, 10694L, 8205L, 
6396L, 5086L, 3636L, 2616L, 1703L, 1114L, 726L), Kuolosuus = c(0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 
0.001, 0.001, 0.001, 0.001, 0.005, 0.005, 0.005, 0.005, 0.005, 
0.005, 0.005, 0.005, 0.005, 0.005, 0.031, 0.031, 0.031, 0.031, 
0.031, 0.031, 0.031, 0.031, 0.031, 0.031, 0.056, 0.056, 0.056, 
0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 
0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 0.056, 0.056)), class = "data.frame", row.names = c(NA, 
-100L))

knitr::kable(Suomi.Ika,caption="Suomen väestön ikärakenne 24.3.2020 (https://findikaattori.fi/fi/14)")
Suomen väestön ikärakenne 24.3.2020 (https://findikaattori.fi/fi/14)
Ikä Miehet Naiset Yht Kuolosuus
0 23250 22496 45746 0.000
1 24875 23215 48090 0.000
2 26172 25099 51271 0.000
3 27485 26629 54114 0.000
4 29102 27601 56703 0.000
5 30190 28878 59068 0.000
6 30883 29204 60087 0.000
7 31432 30210 61642 0.000
8 31673 30448 62121 0.000
9 32476 30893 63369 0.000
10 32120 30823 62943 0.000
11 31792 30423 62215 0.000
12 31546 30019 61565 0.000
13 31553 30217 61770 0.000
14 30701 29631 60332 0.000
15 31040 29432 60472 0.000
16 30198 29112 59310 0.000
17 29903 28336 58239 0.000
18 30151 28788 58939 0.000
19 30938 28773 59711 0.000
20 31485 29311 60796 0.000
21 30790 29006 59796 0.000
22 31874 30337 62211 0.000
23 33138 31092 64230 0.000
24 34392 32519 66911 0.000
25 35532 33784 69316 0.000
26 35697 33871 69568 0.000
27 37344 34985 72329 0.000
28 36978 34704 71682 0.000
29 37541 35249 72790 0.000
30 36759 34554 71313 0.000
31 36808 34626 71434 0.000
32 35202 32867 68069 0.000
33 35670 33297 68967 0.000
34 36676 34309 70985 0.000
35 37645 35316 72961 0.000
36 38241 35982 74223 0.000
37 38111 35326 73437 0.000
38 36144 34217 70361 0.000
39 35981 33819 69800 0.000
40 35351 33705 69056 0.000
41 35613 33521 69134 0.000
42 35711 34062 69773 0.000
43 35973 34023 69996 0.000
44 35280 33236 68516 0.000
45 33254 32022 65276 0.000
46 30548 28940 59488 0.000
47 31452 29955 61407 0.000
48 31889 31249 63138 0.000
49 32839 32225 65064 0.000
50 33666 32673 66339 0.001
51 35728 35242 70970 0.001
52 36548 36023 72571 0.001
53 36619 36243 72862 0.001
54 36621 36431 73052 0.001
55 37191 37069 74260 0.001
56 37388 37433 74821 0.001
57 36942 36938 73880 0.001
58 36360 36900 73260 0.001
59 35838 36812 72650 0.001
60 35523 36484 72007 0.005
61 34157 35296 69453 0.005
62 35394 36704 72098 0.005
63 35965 37620 73585 0.005
64 35244 37232 72476 0.005
65 34516 37657 72173 0.005
66 34069 36657 70726 0.005
67 35021 37709 72730 0.005
68 33510 36261 69771 0.005
69 34159 37401 71560 0.005
70 34694 38385 73079 0.031
71 34711 38978 73689 0.031
72 33897 38511 72408 0.031
73 32161 37331 69492 0.031
74 28234 32829 61063 0.031
75 21728 26262 47990 0.031
76 20191 24623 44814 0.031
77 15599 19583 35182 0.031
78 21814 28104 49918 0.031
79 14655 19618 34273 0.031
80 15989 22594 38583 0.056
81 14794 20843 35637 0.056
82 12781 19077 31858 0.056
83 11191 17284 28475 0.056
84 10385 16458 26843 0.056
85 8832 14984 23816 0.056
86 7406 13044 20450 0.056
87 6628 12718 19346 0.056
88 5941 11574 17515 0.056
89 4926 10813 15739 0.056
90 3766 9294 13060 0.056
91 3094 7600 10694 0.056
92 2150 6055 8205 0.056
93 1621 4775 6396 0.056
94 1158 3928 5086 0.056
95 835 2801 3636 0.056
96 517 2099 2616 0.056
97 264 1439 1703 0.056
98 180 934 1114 0.056
99 111 615 726 0.056

1.3 Kuolemien määrän ennustaminen

Kuolemin määrää voidaan ennustaa olettamalla sairastuneiden osuus eri ikäryhmistä ja laskemalla kullekin ikäryhmälle kuolleiden määrä THL:n antamien parametrien mukaan. Näin saatuja tulosia voidaan verrata toteutuneisiin kuolemin määriin.

Ennuste voidaan laatia ikärakenteen, sairastuneiden osuuden ja ikäryhmä kohtaisen kuolleisuuden perusteella kaavalla \(K_{i}=N_{i}s_{i}p_{i}\), jossa

  • \(K_{i}\) ennustettu kuolleiden lukumäärä ikäryhmässä i
  • \(N_{i}\) henkilöiden lukumäärä ikäryhmässä i
  • \(s_{i}\) sairastuneiden osuus ikäryhmässä i (tätä voidaan varioida, jolloin saadaan eri skenaarioita)
  • \(p_{i}\) kuoleman todennäköisyys ikäryhmässä i (perustuu THL:n julkaisemiin parametreihin, viimeinen sarake yllä olevassa taulukossa)

Kuolleiden kokonaismäärä saadaan laskemalla kaikkien ikäryhmien määrät yhteen.

Toisaalta, THL:n koronavirusvasta-ainetuloksien perusteella voidaan suhteuttaa havaitut kuolemat mallin antamiin. esim. viikkoraportin(2020-05-08) mukaan vasta-aineita oli 38 henkilöllä 1504 tutkitusta eli 2.53%:lla. Samaan aikaan oli todettu 212 kuolemaa (8.5. 2020).

Vertaamalla havaittuja vasta-aine osuuksia ja havittuja kuolemia, vastaaviin mallin antamiin tuloksiin voidaan arvioida ennusteita.

2 Ennusteita

# head(Suomi.Ika,2)

tmp.P<-c(2.5,seq(5,75,5))
tmp.K<-sapply(tmp.P,function(x)with(Suomi.Ika,round(sum(x/100*Yht*Kuolosuus),-2)))
tmp.ulos<-data.frame(cbind(tmp.P,tmp.K))
names(tmp.ulos)<-c("Sairastuneiden osuus (%)","Kuolleiden lukumäärä")
knitr::kable(tmp.ulos,caption="Ennuste THL:n parametrien ja Suomen ikärakenteen perusteella.")
Ennuste THL:n parametrien ja Suomen ikärakenteen perusteella.
Sairastuneiden osuus (%) Kuolleiden lukumäärä
2.5 1000
5.0 2000
10.0 3900
15.0 5900
20.0 7800
25.0 9800
30.0 11800
35.0 13700
40.0 15700
45.0 17600
50.0 19600
55.0 21500
60.0 23500
65.0 25500
70.0 27400
75.0 29400

Voidaan todeta ennusteen olevan huomattavasti suurempi kuin havaittu kuolleiden lukumäärä. Havaittu määrä 210 on 21% ennusteesta. Tätä voidaan käyttää korjauskertoimena ja saada alla olevat ennusteet eri sairastuneiden osuuksille koko väestöstä.

# head(Suomi.Ika,2)

tmp.P<-c(2.5,seq(5,75,5))
tmp.K<-sapply(tmp.P,function(x)with(Suomi.Ika,round(sum(x/100*Yht*Kuolosuus),-2)))
tmp.ulos1<-data.frame(cbind(tmp.P,tmp.K,round(tmp.K*210/tmp.K[1],-2)))
names(tmp.ulos1)<-c("Sairastuneiden osuus (%)","Kuolleiden lukumäärä","Korjattu kuolleiden lukumäärä")
knitr::kable(tmp.ulos1,caption="Ennuste THL:n parametrien ja Suomen ikärakenteen perusteella.")
Ennuste THL:n parametrien ja Suomen ikärakenteen perusteella.
Sairastuneiden osuus (%) Kuolleiden lukumäärä Korjattu kuolleiden lukumäärä
2.5 1000 200
5.0 2000 400
10.0 3900 800
15.0 5900 1200
20.0 7800 1600
25.0 9800 2100
30.0 11800 2500
35.0 13700 2900
40.0 15700 3300
45.0 17600 3700
50.0 19600 4100
55.0 21500 4500
60.0 23500 4900
65.0 25500 5400
70.0 27400 5800
75.0 29400 6200
tmp.K.60<-sapply(10,function(x)with(Suomi.Ika[Suomi.Ika$Ikä<60,],sum(x/100*Yht*Kuolosuus)))
tmp.K.61<-sapply(10,function(x)with(Suomi.Ika[Suomi.Ika$Ikä>=60,],sum(x/100*Yht*Kuolosuus)))
# tmp.K.61/(tmp.K.60+tmp.K.61)

tmp.K.80<-sapply(10,function(x)with(Suomi.Ika[Suomi.Ika$Ikä<80,],sum(x/100*Yht*Kuolosuus)))
tmp.K.81<-sapply(10,function(x)with(Suomi.Ika[Suomi.Ika$Ikä>=80,],sum(x/100*Yht*Kuolosuus)))
# tmp.K.81/(tmp.K.80+tmp.K.81)
# tmp.K.61/(tmp.K.60+tmp.K.61)-tmp.K.81/(tmp.K.80+tmp.K.81)

Havaitaan, että esim. jos 60% väestöstä sairastuu on odotettavissa 4900 koronakuolemaa. Tämä on kuitenkin hyvin varovainen arvio, oikea ennuste lienee THL:n parametrien mukaan laskettujen ja korjatun ennusteen välillä. On myös huomattava, että THL:n arvio vasta-aineista perustuu otokseen, jonka alueittainen vaihtelu on suurta. Lisäksi yli 69-vuotiaat ovat otoksen ulkopuolella.

Kuoleista ennusteen mukaan 98.1% on yli 60-vuotiaita ja 44.5% yli 80-vuotiaita, siis 53.6% on 60-79-vuotiaita.