-
Ezt a projektet hobbiként, kizárólag nyilvánosan elérhető információforrásokra támaszkodva végzem. Ebből adódóan az eredmények nem tekinthetőek semmilyen szerv hivatalos álláspontjának, valamint -- bár természetesen igyekeztem a lehető legjobb tudásom szerint eljárni -- a helyességére sincs hivatalos pecsét.
-
Ennek közvetlen folyományaként: minden észrevételt, megjegyzést, dicséretet, kritikát, javaslatot a lehető legnagyobb örömmel veszek! (És, amennyiben lehet, igyekszem felhasználni a továbbfejlesztéshez.) Email-címem: ferenci.tamas@nik.uni-obuda.hu. Ha valaki jártas ebben, akkor bátran nyisson a Github-on issue-t. A felhasznált adatbázist, valamint az elemzést végző szkripteket teljes terjedelmükben nyilvánosságra hoztam (lásd a fejlécben lévő linket).
-
A projekt elsődleges célközönségét a szakmában dolgozók jelentik, de minden tőlem telhetőt megtettem, hogy itt, illetve az egyes pontok Magyarázat nevű füleiben -- ha a statisztikai részleteket nem is -- de az eredmények jelentését, értelmét, és mindenekelőtt a belőle levonható következtetéseket minden érdeklődő laikus számára érthetően megmagyarázzam. Ettől elválasztva, tömören igyekeztem az adott módszer matematikai hátterét és számítástechnikai megvalósítást is összefoglalni a Magyarázat füleken.
-
Nagyon fontos, hogy egy eredmény csak akkor használható, ha értjük annak a limitációit, hibaforrásait is! (Például a reprodukciós szám az esetszámból van kiszámolva, ami függ a tesztelési aktivitástól, az aluldetektálás egy elméleti halálozási rátát használ, ami függhet attól, hogy melyik korosztályban terjed elsősorban a járvány stb.) Ezekre a Magyarázat pontokban szintén igyekeztem felhívni a figyelmet.
Az utóbbi évtizedekben egyre többet és többet megértettünk azokból a tényezőkből, melyek a járványok kitörését és lefutását meghatározzák. Kialakult egy új tudományterület, a biostatisztika, az epidemiológia, a biomatematika elemeiből építkezve, mely arra a felismerésre épül, hogy az e tényezők -- biológiaitól egészen a szociológiaiakig -- összhatásaként kialakuló járványlefutás matematikai eszközökkel leírható. Ennek a pontossága elért arra a szintre, hogy ez az eszköztár többé már nem csak az elméleti alapkutatóknak érdekes, hanem a létező legkonkrétabb gyakorlati kérdések eldöntésében is létfontosságú segítséget tud adni a szakembereknek.
Mekkora egy járvány kitörésnek a veszélye? Ha kitört, milyen lefutásra számíthatunk, tehát hány betegre és milyen időbeli eloszlásban? Az egyes beavatkozások hogyan módosítják ezt? Ennek alapján: mi az optimális eszköz a járvány megfékezésére, vagy legalábbis lelassítására? Ilyen és ehhez hasonló kérdésekben mind segítik a választ a megfelelő módszerek; talán már ennyi is mutatja, hogy miért nagyon is lényeges a gyakorlati alkalmazásuk.
Az immár Magyarországot is elért koronavírus-járvány sajnálatosan jó alkalmat ad ezen módszerek gyakorlatba átültetésére. Itt a feladat egy már kitört járványra történő válaszadás (angol szóval: outbreak response). Ezen a weboldalon ennek az eszközeit igyekszem felhasználni
- jól kezelhető formában (weboldal, melyen teljesen testreszabhatóak a számítások, de közben semmilyen programozási ismeret nem igényel),
- átfogóan (lehetőleg teljeskörűen megvalósítva az outbreak response-hoz fontos számításokat),
- teljesen transzparensen, a 'nyílt tudomány' jegyében.
E módszerek kapcsán egyre fontosabb kérdést jelent a számítási háttér is. Szerencsére a technika fejlődése lehetővé teszi, hogy a szükséges számításokat gyakorlatilag folyamatosan, valós időben futtassuk.
Bár a konkrét cél a koronavírus-járványra adott válasz támogatása, valójában a kifejlesztett kódom bármilyen más járványnál is felhasználható, csak az esetszámokat kell kicserélni. Éppen ezért azt remélem, hogy az itt leírt ismeretek, illetve ez keretrendszer később is fogja tudni támogatni a magyar járványügyiseket.
- Ferenci Tamás. Harcban a koronavírus-járvánnyal: 1. rész: A taktika. INTERPRESS MAGAZIN 40:6 pp. 30-38. , 9 p. (2020).
- Ferenci Tamás. Harcban a koronavírus-járvánnyal: 2. rész: A stratégia. INTERPRESS MAGAZIN 40:7 pp. 36-45., 10 p. (2020).
- Ferenci Tamás. Járványok: kitörés, terjedés, elfojtás. GYÓGYSZERÉSZET 64:6 pp. 324-333., 10 p. (2020).
- Ferenci Tamás. Az első hullám tapasztalatai. (2020). Online cikk.
- Ott a végünk, ha nem beszéljük meg nyíltan, mi jó, és mi nem a járvány kezelésében. Interjú Ferenci Tamással (2020).
- Röst Gergely; Bartha Ferenc A.; Bogya Norbert; Boldog Péter; Dénes Attila; Ferenci Tamás; Horváth Krisztina J.; Juhász Attila; Nagy Csilla; Tekeli Tamás; Vizi Zsolt; Oroszi Beatrix. Early Phase of the COVID-19 Outbreak in Hungary and Post-Lockdown Scenarios. VIRUSES 12:7 p. 708 (2020). DOI: 10.3390/v12070708.
- Ferenci Tamás. Versenyfutás a koronavírus-vakcináért. (2020). Online cikk.
- Ferenci Tamás. Többlethalálozási adatok európai összevetésben. (2021). Online cikk.
- Ferenci Tamás. A magyarországi regisztrált koronavírusos halottak adatainak elemzése. (2021). Online cikk.
- Ferenci Tamás. Different approaches to quantify years of life lost from COVID-19. Eur J Epidemiol. 2021 Jun 10;1-9. DOI: 10.1007/s10654-021-00774-0.
- Ferenci Tamás. Bizalmunk az oltásban: bűnök és hibák. 168 ÓRA 33:44 pp. 36-37., 2 p. (2021).
- Ferenci Tamás. Gondolatok a járványügyi adatok közléséről. (2021). Online cikk.
Az adatokat egyelőre kézzel gépelem be az NNK adatközlései alapján, naponta.
(Személyes megjegyzés zárójelben: a magyar adatszolgáltatás elégtelenségéről már sokszor, sok helyen beszéltem. A kérdés az elemi járványügyi adatoknál kezdődik, amik lényegében egy eset- és halott-számra redukálódnak, most nem beszélve arról, hogy ezeket is úgy közlik, hogy minden nap lecserélik az előző számot, tehát csak az tudja követni az időbeli helyzetet, aki minden reggel leírja egy kockás füzetbe a számot. A területi adatokat egy PNG formátumú kép (!) fájlban közlik, erre mondani is nehéz mit. Életkori lebontás, nemi lebontás sehol. Ráadásul ezeket meg is indokolták: nem adják meg, mert az "leköthetővé tenné a betegeket". Tehát az, hogy "tegnap 1234 betegünk volt 60 és 65 év között" az lekövethetővé tesz szerintük valakit. Mindeközben viszont a halottak adatait olyan pontossággal adják meg, hogy csak én 4 embert tudtam név szerint beazonosítani a listáról. Szóval a "tegnap 1234 60 és 65 év közötti betegünk volt" kitételre azt mondják, hogy sajnos beazonosíthatóvá tesz valakit, de ez meg teljesen oké, hogy névvel-címmel megtudja az egész ország valakiről, hogy alkoholista volt. Most az nyilván sportszerűtlen, ha megmutatom, hogy egy nyugati országban milyen adatközlést működtetnek a népegészségügyi hatóság (ez itt például Washington államé), de az igazán szomorú az, hogy az észak-macedón (észak-macedón!) egészségügy ilyet működtet, már a járvány harmadik hetétől kezdve. És hangsúlyozom, hogy ezek, amikről itt szó van, kivétel nélkül olyan adatok, ami készen rendelkezésre áll, semmiféle érdemi munkát vagy erőfeszítést nem igényelne a közlése, ez tisztán elhatározás kérdése. El kellene határozni, hogy felnőttnek tekintjük a magyar embereket, hogy megismerhetik ezeket az adatokat. Talán hadd mondjak két példát a részletesebb adatokra is. Anglia, intenzív osztályos adatok: betegjellemzők, kezelés adatai, kimenet adatai, életkori, nemi és sok egyéb lebontásban. Mindez hetente frissítve (100 oldalas jelentés), bárki számára nyilvánosan letölthetően. Egyesült Államok, kórházi terheltségi és kapacitási adatok: minden amerikai kórház adatai, ágyszám, foglaltság, betegforgalom, különféle lebontásokban, összesen több mint 90 változó. Mindez hetente frissítve (150 ezer soros Excel-tábla), bárki számára nyilvánosan letölthetően. Ez részben filozófiai kérdés, hogy le kellene tenni ezt a paternalizmust, hogy a felkent szakértők jobban tudják a dolgokat, mint a pórnép, úgyhogy nekik minek is adatokat adni, de csak részben. Van ugyanis egy még drámaibb szempont: a bizalom. Azért kell ezeket az adatokat közölni, hogy az emberek bízzanak bennünk. Mert látják, hogy mi történik. Lehet, hogy rossz, de legalább látják. Ha nem látják, akkor nem azt gondolják, hogy minden tökéletes, és azért nem láthatnak bele, hanem azt, hogy valami nem tökéletes és azért nem. Szóval nem csak arról van szó, hogy nem tekintik felnőttnek a magyarokat, hanem, hogy ezzel saját maguk alatt vágják a fát, mert a teljes homályban tartás a legjobb táptalaja minden spekulációnak és összeesküvés-elméletnek.)
Frissítés (2020. július 29.): Hosszas gondolkodás után végülis átállítottam az oldal adatforrását a Johns Hopkins adatbázisra, így az oldal innentől teljesen automatikusan és naponta frissül. Jobban örültem volna az ECDC vagy WHO használatának (egy fokkal mégis csak "hivatalosabbak"), de mindkettőben vannak hibák - ami amúgy szintén megérne egy misét... - míg a Johns Hopkins hónapokra visszamenően helyes számokat tartalmaz.
Frissítés (2021. július 27.): A hivatalos magyar adatközlés június közepétől nem ad meg hétvégi adatokat, hanem hétfőn egyben közli őket. (A "hétvégi adatokat közöljük" címke alatt, de mivel két napon át nincs adatközlés, ez valójában három nap - péntek, szombat, vasárnap - együttes adata, hiszen a hétfő előtti utolsó adatközlés a megelőző hét péntek reggeli, ami a csütörtöki adatokat adja meg.) Mivel ez hosszabb időre így maradt, így mindenképpen kezdeni kellett valamit. A múltbeli adatok szerint a pénteki és a szombati számok meglehetősen stabil hányadát adták a három nap együttes adatának, így úgy döntöttem, hogy ezen arányok használatával szétosztom a hétfő reggel közölt (össz)adatot a három nap között. A szétosztási arányok: esetszámban 0,4 és 0,35, halálozások számában 0,4 és 0,3, teszt-számban 0,35 és 0,35 (rendre a péntek és a szombat). Az így kapott számokat kerekítettem, majd kivontam a hétfőn közöltből (hogy mindegyik szám egész legyen és az összeg se változzon).
Az elvégzett tesztek számának adatforrása az Our World in Data (OWID).
A többlethalálozási számításokhoz a heti halálozási adatok forrása a Központi Statisztikai Hivatal (STADAT 22.2.1.2).
A számítási eredményeim, adatok, ábrák, táblázatok a forrás megjelölésével szabadon felhasználhatóak, ezt nem tiltom meg, sőt, kimondottan bátorítom, és igyekszem segíteni is azzal, hogy mindent kényelmesen kezelhető formátumban (táblázatokat CSV-ben, ábrákat PDF-ben és PNG-ben) egy kattintással letölthetővé teszek.
Alapvetően két célunk van outbreak response során. Az egyik, hogy leírjuk a járvány aktuális helyzetét, megfelelően választott mutatószámokkal, mely jelzi a jelenlegi helyzetet. Másrészt, és talán ez a még fontosabb, hogy ez alapján előrejelzéseket tegyünk a jövőre nézve. Ezen előrejelzések egy része empirikus: nincs ismeret mögötte arról, hogy a háttérben lévő folyamatok hogyan működnek, mik az ok-okozati kapcsolatok, egyszerűen csak "meghosszabbítjuk" a múltbeli viselkedést. Az előrejelzések más része mechanisztikus, modell-alapú: feltételez valamit a valóságos jelenség viselkedéséről, esetleg úgy, hogy annak néhány paramétere még ismeretlen, és azokat megpróbálja a múltbeli tényadatokból megbecsülni.
Ez azért borzasztóan fontos, mert ha van egy modellünk, mégpedig egy jól validált modellünk (így szokták hívni, ha a modell tényleg jól működik, olyan értelemben, hogy amit mond arra nézve, hogy mi fog történni, az történik a valóságban is), akkor a számítógép előtt ülve le tudjuk játszatni a jövőbeli történéseket. Meg tudjuk mondani, hogy milyen lesz a járvány lefutása, de ami még sokkal fontosabb: ki tudjuk próbálni (még egyszer: a számítógép előtt ülve, teát szürcsölgetve), hogy mi történik akkor, ha egy bizony beavatkozást érvénybe léptetünk. Hogyan hat a lefutásra, ha bezárjuk az egyetemeket? És ha a közoktatást is? És ha mindkettőt? És ha a mozikat is? És ha 30% távmunkában kezd el dolgozni? És ha 20? És ha 40? Valóságból csak egy van, nem tudjuk mint egy videójátékban elmenteni a helyzetet, és kipróbálni ezeket a lehetőségeket mindig visszatérve a mai mentéshez -- de a modellek lehetővé teszik, hogy valamilyen értelemben mégis csak ezt csináljuk! Lehetővé teszik, hogy kockázat nélkül kipróbáljuk a különféle intézkedések hatását, ami, mondani sem kell, azért nagyon fontos, mert lehetővé teszi a járványügyi intézkedések racionális alapon történő megválasztását.
Térjünk vissza egy pillanatra az aktuális helyzet jellemzéséhez. Itt ugyanis van egy fogalom, amivel mindenképp meg kell ismerkedni: a reprodukciós szám. Ez azt jelenti, hogy egy ember átlagosan hány másiknak adja át a fertőzést. Egy nagyon ragályos betegségnél ez lehet
A különböző intézkedések tehát az
Az
Egy pillanatra még érdemes visszatérni az
Ezt úgy érdemes felfogni, hogy az
Jól látszik, hogy van egy küszöb, amit ha elér a védettek száma, akkor nem csak lelassítjuk a betegséget, hanem egyáltalán nem tud önfenntartó járvány kialakulni, és az is érzékelhető, hogy ez a küszöb annál magasabban van, minél nagyobb az
Ez gondolatilag is fontos: ha az
Fontos látni, hogy az
Az időbeli dinamika egyik fontos mérőszáma a generációs idő: az az idő, ami egy ember megbetegedésétől eltelik addig, amíg ő megbetegít másokat. (Ennek a lemérése a valóságban problémás, hiszen általában nem tudhatjuk, hogy ki mikor betegedett meg. Éppen ezért a generációs idő helyett a fogalmilag eltérő, de a gyakorlatban vele jól egyező -- és ténylegesen lemérhető -- serial interval-t használják, ez az eset tüneteinek jelentkezése és az általa megbetegített emberek tüneteinek jelentkezése között eltelő idő.) Megint csak: ez sem egy konkrét szám, hanem egy eloszlás, néha kevesebb idő telik el, néha több. Gyakran feltételezzük, hogy az eloszlás alakja adott, csak bizonyos paramétereit -- várható értékét, szórását -- adjuk meg az adott konkrét betegségre, járványügyi helyzetre.
Egy betegség "veszélyességének" legalapvetőbb mérőszáma a halálozási arány. Egy éppen zajló járvány esetében azonban egyáltalán nem nyilvánvaló, hogy ennek mi a megfelelő számítása; a naiv számítás torzított eredményt ad. Éppen ezért fontos végiggondolni ezt a kérdést, és igyekezni kiküszöbölni ezt a torzítást.
Bár elsőre meglepőnek hangozhat, de ez az eredmény aztán arra is felhasználható, hogy igyekezzünk jellemezni az aluldetektálást, tehát azt, hogy a betegek egy részéről nem tudjuk, hogy betegek, azaz nem jelennek meg a jelentett számban. (Vagy azért, mert vannak tüneteik ugyan, de mégsem tesztelték őket, vagy azért, mert tüneteik sincsenek; persze kellően széleskörű teszteléssel az ilyen esetek egy része is felderíthető lenne.)
A projekt több pontból épül fel, melyek közül a bal oldali menüben lehet választani.
- A Járványgörbe mutatja a megbetegedések számának időbeli alakulását, azaz a járvány lefutását. Felhasználható a járvány alakulásának áttekintésére, illetve különféle görbék illeszthetők a tényadatokra (ez utóbbi azért is fontos, mert e görbék adatai később más számítások fontos bemenő paraméterét jelentik).
- Az Előrejelzés pont összefoglalja a különféle módszerekből nyerhető előrejelzéseket az esetszám jövőbeli alakulására vonatkozóan. Persze ezek nem biztos értékek, úgyhogy az eredmények jellemzik a kapott előrejelzések bizonytalanságát is. Végezhető szcenárióelemzés is: megnézhetjük mi történik, ha a jelenlegi adatokból számolható helyett valamilyen más, általunk beállított érték szerint alakul a jövő.
- Az reprodukciós szám becslése pont -- különféle statisztikai módszerekkel ad becslést az
$R$ -re. Választható a valós idejű becslés, mely igyekszik folyamatosan nyomon követni az időben változó reprodukciós számot, illetve a görbe egy szakaszából vagy egészéből számított becslés (egyetlen egy szám) is; ez utóbbinak olyan szakasz esetén van értelme, ahol feltehető, hogy az$R$ állandó. Itt is igaz, hogy az eredményekhez hozzátartozik a kapott becslésben lévő bizonytalanság jellemzése is. - A Halálozási arány és aluldetektálás pont a járvány halálozási rátáját követi, elvégzi korrigálását arra tekintettel, hogy egy éppen zajló járványban vagyunk és nem minden eset zárult le, illetve egy ettől külön -- de módszertanában erre építő -- problémakörként lehetővé teszi a betegek aluldetektálására történő következtetést.
- Az Automatikus jelentésgenerálás a legfontosabb, fenti pontokon keresztül elérhető eredményeket automatikusan összeállítja egy PDF formátumú jelentésben és azt letölthetővé teszi.