tamas-ferenci / ExcessMortEUR

Többlethalálozási adatok európai összevetésben
GNU General Public License v3.0
9 stars 1 forks source link

Svédország és Lettországot megtartása #1

Closed pintergreg closed 3 years ago

pintergreg commented 3 years ago

Kedves @tamas-ferenci,

Azt írod, hogy „Kidobjuk a 2002 előtti adatokat, és Svédországot valamint Lettországot, így nem marad 99-es (azaz héthez nem rendelt) mortalitási adat”. Viszont engem kifejezetten érdekelne Svédország miután rengeteget szerepelt a hírekben egy évvel ezelőtt annak kapcsán, hogy végső soron azáltal játszanak nyájimmunitásra, hogy minél többen essenek át a fertőzésen.

Ráadásul ez a lépés az adattisztítás szempontjából is megkérdőjelezhető. Miért veszítsünk el két országot csak azért, mert vannak héthez nem rendelt adataik. Ezért én azt tenném, hogy kidobok minden olyan oszlopot, aminek a neve W99-re végződik.

Az R-től borsódzik a hátam, így inkább Pythonban szemléltetem:

import eurostat

data = eurostat.get_data_df("demo_r_mwk_ts")
data = data.query("sex == 'T'")
data.drop([i for i in data.columns if i.endswith("W99")], axis=1, inplace=True)
data.rename({"geo\\time": "geo"}, axis=1, inplace=True)  # fix column name

Én -miután a konkrét témához nem értek- csak a heti halálozási értékeket ábrázoltam a fenti módon betöltött adatból:

deaths_hu deaths_se

tamas-ferenci commented 3 years ago

Azt egész biztos nem teheted meg, hogy egyszerűen kidobod ezeket, hiszen ezzel megváltozik a halálozások össz-száma! Az esetleg viszont már szóba jöhet, hogy szétosztod arányosan a többi hét között, hogy legalább az egymáshoz való viszonyukat ne befolyásold, de közben beállítsd az összeget. (Én egy ilyesmit támogatok az eurostat-nál nyitott issue-ban: https://github.com/rOpenGov/eurostat/issues/200.) Persze ez még mindig kicsit húzós, hiszen lényegében azt feltételezed, hogy a héthez nem rendelés az egy teljesen véletlenszerű jelenség, és ebben azért nem lehetünk biztosak, mert semmit nem tudunk róla, hogy hogyan keletkeztek a héthez nem rendelt adatok.

De mondok egy jó hírt, ami megoldja az egészet: elgondolkoztattál, és most megnéztem, és szerencsére a Short Term Mortality Fluctuations adatbázis tartalmazza Svédországot! ("Statistics Sweden" hivatkozással.) És szépen megvan, e pillanatban 2021 12. hétig.

Kösz az issue-t, megpróbálom ezt az adatforrást bevarázsolni.

pintergreg commented 3 years ago

Megnéztem a hivatkozott adatforrást, és az a véleményem, hogy fölösleges az integrációjával küzdeni, mivel az is tartalmazza az ismeretlen kategóriát. Ennek nyilvánvaló oka, hogy a SCB (Statistiska centralbyrån; ~svéd KSH) is így rögzíti ezeket az adatokat [1].

Innentől kezdve két esetet látok:

Tulajdonképpen felmerül a kérdés, hogy más országok hatóságai hogyan járnak el az ismeretlen időben bekövetkezett halálesetekkel (pl. megtalálás idejét használják, vagy megbecsülik). Ez annyival kényelmesebb, hogy nem nekünk kell megoldani a problémát, mert valaki beírta egy adott napra és onnantól kezdve a statisztika szerint az úgy is történt.

  1. https://www.scb.se/om-scb/nyheter-och-pressmeddelanden/scb-publicerar-preliminar-statistik-over-doda-i-sverige/
    • középütt a „Statistik hämtas som excelfil på scb.se” linken elérhető táblázat is tartalmazza.
    • a hivatkozott weblappal ellentétben a letölthető xlsx (többnyire) angolul is feliratozott
    • az okänd dödsdag az ismeretlen napi halál (tabell 1/374. sor)
pintergreg commented 3 years ago

A szétosztásra a következő módszert javaslom: kigyüjteni az adott év ismert heti halálozásait, majd súlyként használni a Jefferson szétosztáshoz. Ismertebb nevén: D’Hondt módszer. Majd korrigálni a heti értékeket.

import eurostat
import pandas as pd
from voting import apportionment

data = eurostat.get_data_df("demo_r_mwk_ts")
data.rename({"geo\\time": "geo"}, axis=1, inplace=True)  # fix column name

weights = []
for i in range(1, 15):
    w = data.loc[(data["geo"] == "SE") & (data["sex"] == 'T'), f"2021W{i:02d}"].values[0]
    weights.append(w)

unknown = data.loc[(data["geo"] == "SE") & (data["sex"] == 'T'), "2021W99"].values[0]
apportionment.jefferson(weights, unknown)  # [69, 68, 67, 61, 55, 55, 54, 53, 49, 53, 49, 50, 47, 41]
tamas-ferenci commented 3 years ago

"Megnéztem a hivatkozott adatforrást, és az a véleményem, hogy fölösleges az integrációjával küzdeni, mivel az is tartalmazza az ismeretlen kategóriát." Ezt hogy érted? Én megnéztem az adatbázisukat (https://www.mortality.org/Public/STMF/Outputs/stmf.xlsx) és nem látok semmi ilyet, mármint ismeretlen kategóriát a svéd adatoknál. Persze lehet, hogy valami korrekciót alkalmaztak, mert igazad van, az gyanús, hogy ha a svéd legnyersebb, legprimerebb forrásban is ott van.

tamas-ferenci commented 3 years ago

Megvan (https://www.mortality.org/Public/STMF_DOC/STMFmetadata.pdf): "Deaths of unknown weeks are only included in the input file (see additional notes)." "Since the update of December 31 2020 we include deaths of unknown week in the input file, but they are not included in the output data series. Figures of unknown week deaths are increasing progressively: in May 15, 2020, three were 888, in June 28, 1,221, in September 27, 1,874and by December21, 2020, the amount of death with unknown week were 2,465. The last available data reported 2,528 unknown-date deaths for 2020."

(Próbáltam visszaellenőrizni, de a Statistics Sweden, az STMF és az Eurostat hármasból gyakorlatilag még véletlenül sem volt kettő sem, ami egyezett :S Minimális különbségek, szóval nincs jelentsége, csak bosszantott.)

Igazad van, szétosztom inkább az Eurostat-ot.

pintergreg commented 3 years ago

A kereső nekem ezt dobta ki az STMF-re: https://www.mortality.org/Public/STMF/Inputs/STMFinput.zip (Így sikerült az input-ot néznem.) Ebből a zip-ből az SWEstmf.csv-t megnézve viszont azt láttam, hogy a week oszlop tartalmaz UNK elemeket.

Az input viszont egyezik a SCB adataival (2020-ra pl.). Az STMF input eleve csak a 12. hétig tartalmaz adatokat, míg az SCB jóval frissebb, de csak előzetes: „Statistics for 2021 are preliminary and will be revised.”

tamas-ferenci commented 3 years ago

Igen, ez stimmel, írják is, hogy az inputban még benne van.

Még egyszer nagyon köszönöm, javítottam is!