Population-wide antigen testing for COVID-19 in Slovakia
Slovensko plánuje celoplošné antigénové testovanie na COVID-19 a z pohľadu na tlačovky to vyzerá, že to robí nie práve informovane. Tento príspevok obsahuje interaktívny nástroj na odhadovanie a výpočet chybovosti týchto testov na populácii. Na výpočet toho, koľko pozitívnych prípadov test zachytí (true positive) či koľko negatívnych ľudí prehlási za pozitívnych (false positive) je treba niekoľko parametrov. Parametre Populácia, Účasť a Nakazení sú odhady, pričom odhad nakazených v populácii (a aj motivácia za týmto príspevkom) je z príspevku Richarda Kollára. Odhad Senzitivity testu je z porovnávacej štúdie FN Motol. Odhad Špecificity testu je pomerne optimistický a väčšina štúdii ho pre plánované antigénové testy určuje nižšie.
Nástroj je interaktívny a odhady parametrov je možné meniť.
Slovakia is currently planning population-wide antigen testing for COVID-19, and from the looks of the government's press conferences, it seems it is doing so without enough information. This post contains an interactive tool for estimating and calculating the error rates (false positives and negatives) of such population-wide testing. The calculation requires several parameters. The parameters Population, Participation and Infected are estimates, with the number of infected people in the population (and the motivation for this post) taken from a post by Richard Kollár. The estimate of the Sensitivity of the used test is from a study recently done at a Czech hospital. The estimate of the Specificity is quite optimistic and most of the studies done with these tests place the value lower.
The tool is interactive and the parameter estimates can be changed.
Metóda 1Method 1
PopuláciaPopulation
ÚčasťParticipation
NakazeníInfected
Senzitivita testuSensitivity
Špecificita testuSpecificity
Pravdivo pozitívniTrue positive
Falošne pozitívniFalse positive
Pravidivo negatívniTrue negative
Falošne negatívniFalse negative
Netestovaní pozitívniMissed positive
Kód ktorý robí výpočet môžete nájsť nižšie (JavaScript) a vo forme Jupyter notebooku aj na binderi.The code that does the brunt of the calculation is very simple and can be found below as well as in the form of a Jupyter notebook on binder.
// Calculate the population that will get testedlettested_population=population*participation;// Calculate the infected among the tested and non-tested// Assumption that attendance is uniform among infected and non-infectedlettested_infected=infected*participation;lettested_clean=tested_population-tested_infected;// Calculate the true/false and negative/positive from the tested sample,// with given sensitivity and specificitylettrue_clean=tested_clean*specificity;letfalse_infected=tested_clean*(1-specificity);lettrue_infected=tested_infected*sensitivity;letfalse_clean=tested_infected*(1-sensitivity);// Calculate the missed infectedletmissed_infected=infected*(1-participation);return{"true_negative":true_clean,"false_positive":false_infected,"true_positive":true_infected,"false_negative":false_clean,"missed_positive":missed_infected};
Metóda 2Method 2
PopuláciaPopulation
TestovaníTested
Senzitivita testuSensitivity
Špecificita testuSpecificity
Pozitívne otestovaníTested positive
Infikovaní testovaníTested infected
Neinfikovaní testovaníTested clean
Infikovaní celkovoTotal infected
Neinfikovaní celkovoTotal clean
Pravdivo pozitívniTrue positive
Falošne pozitívniFalse positive
Pravidivo negatívniTrue negative
Falošne negatívniFalse negative
Netestovaní pozitívniMissed positive
Kód ktorý robí výpočet môžete nájsť nižšie (JavaScript) a vo forme Jupyter notebooku aj na binderi.The code that does the brunt of the calculation is very simple and can be found below as well as in the form of a Jupyter notebook on binder.
letattendance=tested/population;lettested_negative=tested-tested_positive;// Calculate the number of infected among the testedlettested_infected=(specificity*tested_positive-(1-specificity)*tested_negative)/(specificity+sensitivity-1);lettested_clean=tested-tested_infected;// Assumption that attendance is uniform among infected and non-infectedlettotal_infected=(tested_infected/tested)*population;lettotal_clean=(tested_clean/tested)*population;// Calculate the missed infectedletmissed_infected=total_infected-tested_infected;// Calculate the true/false and negative/positive from the tested sample, with given sensitivity and specificitylettrue_clean=tested_clean*specificity;letfalse_infected=tested_clean*(1-specificity);lettrue_infected=tested_infected*sensitivity;letfalse_clean=tested_infected*(1-sensitivity);return{"tested_infected":tested_infected,"tested_clean":tested_clean,"total_infected":total_infected,"total_clean":total_clean,"true_negative":true_clean,"false_positive":false_infected,"true_positive":true_infected,"false_negative":false_clean,"missed_positive":missed_infected};
VysvetlivkyLegend
Pravdivo pozitívny: Prípad kedy bol pozitívny človek správne identifikovaný testom ako pozitívny. Z populácie sa tak izolujú symptomatickí aj asymptomatickí ľudia a preruší sa tak táto vetva prenosu ochorenia.
Falošne pozitívny: Prípad kedy človek nemá COVID-19 avšak bol testom falošne identifikovaný ako pozitívny (bude absolvovať karanténu a následne si môže myslieť, že COVID-19 už prekonal a má imunitu).
Pravdivo negatívny: Prípad kedy bol negatívny človek správne identifikovaný testom ako negatívny.
Falošne negatívny: Prípad kedy človek má COVID-19 avšak bol testom falošne identifikovaný ako negatívny (a bude mať rozšírené možnosti pohybu na verejnosti).
Netestovaný pozitívny: Prípad kedy človek má COVID-19, avšak nezúčastnil sa celoplošného testovania (a bude mať obmedzené možnosti pohybu na verejnosti).
True positive: A case when a positive person was correctly identified as positive. This will isolate both symptomatic and asymptomatic cases which will terminate their transmission chains.
False positive: A case when a person who does not have COVID-19 was incorrectly identified as positive (will be quarantined and might come to think that they had COVID-19 and that they are immune from then on).
True negative: A case when a negative person was correctly identified as negative.
False negative: A case when a person who does have COVID-19 was incorrectly identified as negative (and will be able to enjoy the expanded rights to freedom of movement that a negatively tested person has).
Missed positive: A case when a person who does have COVID-19 did not participate in the population-wide testing (and will have limited rights to freedom of movement).