Vaccine Adverse Event Reporting System: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 19:
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 :
<syntaxhighlight lang="rsplus">
library(dplyr)
library(ggplot2)
</syntaxhighlight>
e caricato i dati :
<syntaxhighlight lang="rsplus">
patient <- read.csv("2021VAERSDATA.csv")
vaccines <- read.csv("2021VAERSVAX.csv")
symptoms <- read.csv("2021VAERSSYMPTOMS.csv")
</syntaxhighlight>
si nota che gli eventi avversi segnalati ai vaccini anti covid sono 567.697
<syntaxhighlight lang="rsplus">
table(as.factor(vaccines$VAX_TYPE))
</syntaxhighlight>
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:
<syntaxhighlight lang="rsplus">
vaccines <- vaccines[which(vaccines$VAX_TYPE=="COVID19"),]
</syntaxhighlight>
Gli eventi avversi relativi al vaccino MODERNA sono 275.389, quelli relativi a PFIZER 239.991 ecc.
<syntaxhighlight lang="rsplus">
table(as.factor(vaccines$VAX_MANU))
</syntaxhighlight>
JANSSEN MODERNA
51116 275389
PFIZER\\BIONTECH UNKNOWN MANUFACTURER
239991 1201
Unisco i 2 datasets patient e vaccines
<syntaxhighlight lang="rsplus">
df <- merge(patient,vaccines, by="VAERS_ID")
</syntaxhighlight>
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...:
<syntaxhighlight lang="rsplus">
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()
</syntaxhighlight>
[[File:VAERS eventi avversi Covid.png|frame|centro|]]
...inoltre ci sono più eventi avversi relativi a donne che a uomini:
<syntaxhighlight lang="rsplus">
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()
</syntaxhighlight>
[[File:VAERS eventi avversi Covid 2.png|frame|centro|]]
... unisco ai precedenti datasets, quello dei sintomi:
<syntaxhighlight lang="rsplus">
df <- merge(df, symptoms , by.x = "VAERS_ID")
</syntaxhighlight>
... 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 :
<syntaxhighlight lang="rsplus">
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)
}
</syntaxhighlight>
Primi 30 sintomi e morte come sintomo per il vaccino MODERNA :
<syntaxhighlight lang="rsplus">
visualizza_sintomi_e_morti("MODERNA")
</syntaxhighlight>
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 :
<syntaxhighlight lang="rsplus">
visualizza_sintomi_e_morti("PFIZER\\BIONTECH")
</syntaxhighlight>
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 .
<syntaxhighlight lang="rsplus">
df %>%
filter(DIED=="Y" | SYMPTOM1=="Death" | SYMPTOM2=="Death" | SYMPTOM3=="Death" | SYMPTOM4=="Death" | SYMPTOM5=="Death") %>%
summarise(totale_morti=n())
</syntaxhighlight>
totale_morti
<int>
11964
Il vaccino Pfizer ha provocato più segnalazioni di morte rispetto a Moderna e janseen come si vede dal seguente grafico:
<syntaxhighlight lang="rsplus">
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
</syntaxhighlight>
[[File:VAERS eventi avversi Covid 3.png|frame|centro]]
VAX_MANU SEX totale
JANSSEN F 500
JANSSEN M 532
JANSSEN U 55
MODERNA F 2153
MODERNA M 2807
MODERNA U 69
PFIZER\\BIONTECH F 2471
PFIZER\\BIONTECH M 3134
PFIZER\\BIONTECH U 196
== Collegamenti esterni ==
| |||