Saya mencoba menjalankan analisis mediasi pada data disertasi saya. Saya memiliki variabel DV/hasil saya (sikap2), diprediksi oleh tipe kondisi dan sikap 1, ditambah efek acak (nomor peserta), dimediasi oleh penindasan bersama.

Saya membuat model mediator (med.fit) dan model hasil (out.fit) sebagai berikut:

med.fit <- lm(shared oppression ~ condition type + participant number) 
out.fit <- lm(attitudes2 ~ condition type + participant number + shared oppression

Saya kemudian memasukkan ini ke dalam paket mediasi sesuai info pada dokumentasi paket mediasi R:

med.out<- (med.fit, out.fit, treat="condition type", mediator = "shared oppression", robustSE = TRUE, sims = 100)

Ini menghasilkan pesan galat berikut:

Kesalahan dalam mediate(med.fit, out.fit, treat = "data1$Condition.Type", mediator = "data1$Shared.Oppression", : argumen yang tidak digunakan (treat = "data1$Condition.Type", mediator = "data1 $Shared.Oppression", robustSE = TRUE, sims = 100)

Saya tidak yakin bagaimana cara memperbaikinya atau jika saya salah memasukkan sesuatu?

r
1
eleanor_lh 29 Februari 2020, 21:23

1 menjawab

Jawaban Terbaik

Masalahnya akan terkait dengan spasi di nama kolom. Itu dapat diperbaiki dengan membungkus dengan backquotes (`)

library(mediation)
med.fit <- lm(`shared oppression` ~ `condition type` +
           `participant number`, data = data1) 
out.fit <- lm(attitudes2 ~ `condition type` + `participant number` +   
            `shared oppression`, data = data1)

med.out<- mediate(med.fit, out.fit, treat="condition type",
          mediator = "shared oppression", robustSE = TRUE, sims = 100)

Menggunakan contoh yang dapat direproduksi

data(jobs)
names(jobs)[1] <- "treat type"
b <- lm(job_seek ~ `treat type` + econ_hard + sex + age, data=jobs)
c <- lm(depress2 ~ `treat type` + job_seek + econ_hard + sex + age, data=jobs)

# Estimation via quasi-Bayesian approximation
contcont <- mediate(b, c, sims=50, treat="treat type", mediator="job_seek")

contcont$d0
#[1] -0.0128006
0
akrun 29 Februari 2020, 22:41