Efficacia di psicoterapie e psicofarmaci contro la malattia mentale/Psicoterapie per l'ansia
Caricamento librerie
[modifica | modifica sorgente]library(dplyr)
library(metafor)
library(meta)
Parte 1: Dati
[modifica | modifica sorgente]All'indirizzo https://docs.metapsy.org/databases/gad-psyctr/ è possibile scaricare documenti in formato pdf e dati in formato zip relativi ad una meta analisi fatta da ricercatori dal titolo "Generalized Anxiety Disorder: Psychotherapy vs. Control" in cui vengono analizzati 126 studi clinici relativi alle psicoterapie contro l'ansia generalizzata (GAD) confrontando gruppi sottoposti a psicoterapia e gruppi di controllo. Nel dataset csv è presente per ogni studio l'effect size g di Hedges con la sua relativa deviazione standard , la variabile condition_arm1 che contiene il tipo di psicoterapia utilizzata nello studio :
- CBT: Terapia Cognitivo-Comportamentale tradizionale.
- 3rd: Terapie di "terza onda" (come la Mindfulness o l'ACT).
- AR: Rilassamento applicato (Applied Relaxation).
- BT: Terapia comportamentale.
- CR: Ristrutturazione cognitiva.
- DYN: Terapia psicodinamica.
- PE: Psicoeducazione.
- SUP: Terapia di supporto non direttiva.
- PST / IPT / BAT: Terapia per la risoluzione dei problemi, interpersonale o attivazione comportamentale.
- Other psy: Altre psicoterapie che non rientrano nelle categorie precedenti.
La variabile condition_arm2 che contiene il tipo di gruppo con cui si confronta il gruppo sottoposto a psicoterapia : (cau= Cure abituali (Care-as-usual): Il supporto psicosociale o medico standard che un paziente riceve normalmente in ospedale o in clinica, wl= Liste d'attesa (Waiting List): Dove i pazienti non ricevono alcun trattamento immediato, pl (Placebo)= Condizione di controllo con placebo, other ctr= Altri tipi di controlli ) . La variabile time = post esprime l'efficacia della psicoterapia post-trattamento.
Caricamento e visualizzazione dei primi 5 studi :
df <- read.csv("data.csv", sep = ";", dec = ",", stringsAsFactors = FALSE)
df1<-df %>%
select(study,.g,.g_se,condition_arm1,condition_arm2,time) %>%
head()
| study | .g | .g_se | condition_arm1 | condition_arm2 | time |
|---|---|---|---|---|---|
| Alavi, 2020 | -1.67646657594636 | 0.271084899400218 | cbt | cau | post |
| Andersson, 2012 | -0.215274979445237 | 0.287103180731833 | cbt | wl | post |
| Andersson, 2012 | -0.114524183406901 | 0.277584366334222 | dyn | wl | post |
| Andersson, 2012 | 0.0031254693247278 | 0.286251466873408 | cbt | wl | post |
| Andersson, 2012 | -0.0505029090309542 | 0.277395670256741 | dyn | wl | post |
| Andersson, 2012 | -0.488135014653391 | 0.290604741225905 | cbt | wl | post |
Parte 2: Meta analisi
[modifica | modifica sorgente]Calcolo di g di Hedges
[modifica | modifica sorgente]Calcoliamo g di Hedges in meta analisi negli studi con time=post e facciamo il test di Egger per valutare se c'è un bias di pubblicazione dovuto al fatto che gli studi con risultati positivi e g elevati hanno maggiori probabilità di essere pubblicati rispetto a quelli con risultati modesti o negativi. Essendo p-value<0.05 nel test c'è effettivamente un bias di pubblicazione, quindi si utilizza la procedura "trim and fill" di Duval e Tweedie, che stima il numero di studi mancanti e ricalcola g, ottenendo g = -0.6 con intervallo di confidenza al 95%: [ -0.72 , -0.47 ] quindi in tal caso l'effetto della psicoterapia sull'ansia è medio-alto
# Filtro per l'outcome primario al post-trattamento
data_eff <- df %>% filter(time == "post" & !is.na(.g))
m_g <- metagen(TE = .g,
seTE = .g_se,
data = data_eff,
studlab = study,
sm = "SMD",
random = TRUE)
#summary(m_eff)
# Test di Egger per il bias di pubblicazione
metabias(m_g, method.stat = "linreg")
Linear regression test of funnel plot asymmetry Test result: t = -4.65, df = 120, p-value < 0.0001 Bias estimate: -1.7601 (SE = 0.3789) Details: - multiplicative residual heterogeneity variance (tau^2 = 2.9822) - predictor: standard error - weight: inverse variance - reference: Egger et al. (1997), BMJ
m_g<- trimfill(m_g)
print(paste("g =",round(m_g$TE.random,2),"; 95%CI: [",round(m_g$lower.random,2),",",round(m_g$upper.random,2),"]"))
"g = -0.6 ; 95%CI: [ -0.72 , -0.47 ]"
Misurando g per le varie psicoterapie immediatamente dopo il trattamento (time=post) si ottiene che 3rd= Terapie di "terza onda" (come la Mindfulness o l'ACT) ha il g maggiore (g=-1,06), PST : Terapia per la risoluzione dei problemi (g=-0,88), cbt= Terapia Cognitivo-Comportamentale (g=-0,86) ecc. , quindi l'effetto della maggior parte delle psicoterapie sull'ansia è alto...
for (p in unique(df$condition_arm1)) {
df_post <- df %>% filter( time == "post", !is.na(.g), condition_arm1==p)
m_pst<-metagen(TE = .g,
seTE = .g_se,
data = df_post,
studlab = study,
sm = "SMD",
random = TRUE)
print(paste(p,": g=",round(m_pst$TE.random,2),"; 95%CI: [",round(m_pst$lower.random,2),",",round(m_pst$upper.random,2),"]"))
}
[1] "cbt : g= -0.86 ; 95%CI: [ -0.99 , -0.72 ]" [1] "dyn : g= -0.18 ; 95%CI: [ -0.49 , 0.14 ]" [1] "ar : g= -0.81 ; 95%CI: [ -1.09 , -0.53 ]" [1] "other psy : g= -1.13 ; 95%CI: [ -2.16 , -0.09 ]" [1] "cr : g= -0.84 ; 95%CI: [ -1.71 , 0.02 ]" [1] "pst : g= -0.88 ; 95%CI: [ -1.38 , -0.39 ]" [1] "bt : g= -0.4 ; 95%CI: [ -0.85 , 0.05 ]" [1] "3rd : g= -1.06 ; 95%CI: [ -1.34 , -0.78 ]" [1] "sup : g= -0.49 ; 95%CI: [ -0.94 , -0.04 ]" [1] "pe : g= -0.62 ; 95%CI: [ -0.89 , -0.36 ]"