Vaccine Adverse Event Reporting System
Il Vaccine Adverse Event Reporting System (VAERS) è un programma statunitense per la sicurezza dei vaccini, co-gestito dai centri statunitensi per il controllo e la prevenzione delle malattie Centers for Disease Control and Prevention (CDC) e la Food and Drug Administration (FDA). L'obiettivo principale di questo strumento è quello di individuare eventuali reazioni avverse talmente rare da non essere apparse all'interno dei test clinici.
VAERS, il Vaccine Safety Datalink (VSD) e il Clinical Immunization Safety Assessment (CISA) Network sono strumenti mediante i quali il CDC e la FDA monitorano la sicurezza dei vaccini per adempiere al loro dovere di enti regolatori incaricati di proteggere gli individui. Il CDC avverte che non è possibile stabilire una correlazione causa effetto dai dati VAERS[1], per studi di questo tipo ci si affida al VSD.
L'ente europeo incaricato del medesimo compito è l'EudraVigilance, naturalmente possiede le stesse limitazioni dei VAERS.
Origini
Il programma è una conseguenza del National Childhood Vaccine Injury Act (NCVIA) del 1986, che richiede agli operatori sanitari di segnalare:
- Qualsiasi evento elencato dal produttore del vaccino come controindicazione a dosi successive del vaccino.
- Qualsiasi evento elencato nella tabella degli eventi segnalabili che si verifica entro il periodo di tempo specificato dopo la vaccinazione. I dati vengono memorizzati elettronicamente dal CDC nel Vaccine Safety Datalink (VSD).
VAERS è stata fondata nel 1990, ed è gestita congiuntamente dalla FDA e dal CDC, pensato per agire come una sorta di "sistema di allerta precoce", un modo per medici e ricercatori di identificare possibili reazioni impreviste o effetti collaterali della vaccinazione per ulteriori studi.
Attività
Ogni anno il VAERS riceve almeno 50.000 segnalazioni di eventi avversi a seguito dell'immunizzazione da parte di oltre 10 milioni di vaccini. Gli usi con priorità più alta dei dati includono segnalazioni di decessi e altri eventi avversi gravi, il riconoscimento e l'individuazione di effetti avversi e la scoperta di eventi avversi inattesi che coinvolgono nuovi vaccini. I dati VAERS vengono utilizzati anche per monitorare le reazioni note ai vaccini e per la sorveglianza dei lotti di vaccini. Il sistema è stato utilizzato nel 1999 per identificare un vaccino contro il rotavirus che aveva un aumentato rischio di una condizione di ostruzione intestinale e la ricerca ha portato alla sospensione dell'uso del vaccino.
Vaccini anti Covid
Dopo avere scaricato il dataset VAERS del 2021 da qui : https://vaers.hhs.gov/data.html è possibile analizzare gli eventi avversi ai vaccini anti covid segnalati dall'1/1/2021 al 18/9/2021, utilizzando il linguaggio di programmazione R .
Dopo avere caricato le opportune librerie :
library(dplyr)
library(ggplot2)
e caricato i dati :
patient <- read.csv("2021VAERSDATA.csv")
vaccines <- read.csv("2021VAERSVAX.csv")
symptoms <- read.csv("2021VAERSSYMPTOMS.csv")
si nota che gli eventi avversi segnalati ai vaccini anti covid sono 567.697
table(as.factor(vaccines$VAX_TYPE))
6VAX-F ADEN_4_7 ANTH CHOL COVID19
2 16 35 16 567697
DF DT DTAP DTAPHEPBIP DTAPIPV
9 12 183 119 128
DTAPIPVHIB DTP DTPHEP EBZR FLU(H1N1)
160 6 1 15 2
FLU3 FLU4 FLUA3 FLUA4 FLUC3
47 780 54 90 26
FLUC4 FLUN3 FLUN4 FLUR4 FLUX
178 3 13 89 381
FLUX(H1N1) HEP HEPA HEPAB HIBV
5 252 301 33 221
HPV4 HPV9 HPVX IPV JEV1
55 476 6 81 8
JEVX MEN MENB MENHIB MMR
1 20 207 1 336
MMRV MNQ MNQHIB OPV PNC
247 317 1 2 8
PNC13 PPV RAB RV1 RV5
377 344 99 48 232
RVX SMALL TD TDAP TDAPIPV
6 17 39 379 1
TTOX TYP UNK VARCEL VARZOS
14 121 3607 368 4006
YF
46
escludiamo tutti i vaccini, tranne quelli relativi al Covid:
vaccines <- vaccines[which(vaccines$VAX_TYPE=="COVID19"),]
Gli eventi avversi relativi al vaccino MODERNA sono 275.389, quelli relativi a PFIZER 239.991 ecc.
table(as.factor(vaccines$VAX_MANU))
JANSSEN MODERNA
51116 275389
PFIZER\\BIONTECH UNKNOWN MANUFACTURER
239991 1201
Unisco i 2 datasets patient e vaccines
df <- merge(patient,vaccines, by="VAERS_ID")
La variabile RECOVD vale Y se il paziente è guarito dall'evento avverso, N se non è guarito, U se non si sa . In ogni caso come si vede dal seguente grafico ci sono più eventi avversi relativi a MODERNA che a PFIZER...:
df %>%
filter(RECOVD!="",VAX_MANU!="UNKNOWN MANUFACTURER") %>%
group_by(VAX_MANU,RECOVD) %>%
summarise(totale=n()) %>%
ggplot(aes(VAX_MANU,totale, fill=RECOVD))+
geom_bar( stat = "identity")+
coord_flip()
...inoltre ci sono più eventi avversi relativi a donne che a uomini:
df %>%
filter(SEX!="",VAX_MANU!="UNKNOWN MANUFACTURER") %>%
group_by(VAX_MANU,SEX) %>%
summarise(totale=n()) %>%
ggplot(aes(VAX_MANU,totale, fill=SEX))+
geom_bar( stat = "identity")+
coord_flip()
... unisco ai precedenti datasets, quello dei sintomi:
df <- merge(df, symptoms , by.x = "VAERS_ID")
... creo una funzione che visualizza in base al tipo di vaccino prescelto i primi 30 eventi avversi per numero di segnalazioni ed il numero di segnalazioni aventi "morte" come sintomo :
visualizza_sintomi_e_morti <- function(vaccino)
{
df1 <- df %>%
filter(VAX_MANU==vaccino)
df2 <- data.frame(sintomi=df1$SYMPTOM1)
df3 <- data.frame(sintomi=df1$SYMPTOM2)
df4 <- data.frame(sintomi=df1$SYMPTOM3)
df5 <- data.frame(sintomi=df1$SYMPTOM4)
df6 <- data.frame(sintomi=df1$SYMPTOM5)
df2 <- rbind(df2,df3)
df2 <- rbind(df2,df4)
df2 <- rbind(df2,df5)
df2 <- rbind(df2,df6)
p1<-df2 %>%
filter(sintomi!="") %>%
group_by(sintomi) %>%
summarise(totale=n()) %>%
arrange(desc(totale)) %>%
top_n(30)
p2<-df2 %>%
filter(sintomi=="Death") %>%
group_by(sintomi) %>%
summarise(totale=n())
print(p1)
print(p2)
}
Primi 30 sintomi e morte come sintomo per il vaccino MODERNA :
visualizza_sintomi_e_morti("MODERNA")
sintomi totale <chr> <int> 1 Headache 49296 2 Pyrexia 44741 3 Fatigue 42261 4 Chills 39675 5 Pain 35886 6 Pain in extremity 30043 7 Nausea 27900 8 Dizziness 24621 9 Injection site erythema 21769 10 Injection site pain 21493 # … with 20 more rows
sintomi totale <chr> <int> 1 Death 2735
Primi 30 sintomi e morte come sintomo per il vaccino PFIZER\\BIONTECH :
visualizza_sintomi_e_morti("PFIZER\\BIONTECH")
sintomi totale <chr> <int> 1 Headache 41695 2 Fatigue 35088 3 Pyrexia 31600 4 Pain 29330 5 Dizziness 28364 6 Chills 27802 7 Nausea 24645 8 Pain in extremity 20588 9 Dyspnoea 14692 10 Arthralgia 14462 # … with 20 more rows sintomi totale <chr> <int> 1 Death 2874
Numero di morti segnalati a causa dei vaccini anti covid considerato che negli Stati Uniti sono state somministrate dal 1/1/2021 al 18/9/2021 circa 379.769.121 dosi e quindi 11964*100000/379769121=3,15 morti ogni 100.000 dosi .
df %>%
filter(DIED=="Y" | SYMPTOM1=="Death" | SYMPTOM2=="Death" | SYMPTOM3=="Death" | SYMPTOM4=="Death" | SYMPTOM5=="Death") %>%
summarise(totale_morti=n())
totale_morti <int> 11964
Il vaccino Pfizer ha provocato più segnalazioni di morte rispetto a Moderna e janseen come si vede dal seguente grafico:
df2<-df %>%
filter(SEX!="",VAX_MANU!="UNKNOWN MANUFACTURER",DIED=="Y"| SYMPTOM1=="Death" | SYMPTOM2=="Death" | SYMPTOM3=="Death" | SYMPTOM4=="Death" | SYMPTOM5=="Death") %>%
group_by(VAX_MANU,SEX) %>%
summarise(totale=n())
df2 %>%
ggplot(aes(VAX_MANU,totale,fill=SEX))+
geom_bar( stat = "identity")+
coord_flip()
df2
VAX_MANU SEX totale 1 "JANSSEN" F 500 2 "JANSSEN" M 532 3 "JANSSEN" U 55 4 "MODERNA" F 2153 5 "MODERNA" M 2807 6 "MODERNA" U 69 7 "PFIZER\\BIONTECH" F 2471 8 "PFIZER\\BIONTECH" M 3134 9 "PFIZER\\BIONTECH" U 196
Note
- ^ vaers.hhs.gov, https://vaers.hhs.gov/data/dataguide.html.
Collegamenti esterni
- Centers for Disease Control and Prevention, https://www.cdc.gov/vaccinesafety/Vaccine_Monitoring/Index.html
- https://vaers.hhs.gov/ - Vaccine Adverse Event Reporting System (sito ufficiale). Contiene anche le istruzioni per scaricare i dati VAERS.
- https://medalerts.org/vaersdb/index.php - MedAlerts. Ricerche nel VAERS database
- https://www.fda.gov/BiologicsBloodVaccines/SafetyAvailability/ReportaProblem/VaccineAdverseEvents/default.htm