Spss
應用魯賓規則來組合多重插補數據集
我希望匯集對多重估算數據(例如多重回歸,ANOVA)執行的一組非常基本的分析的結果。多重插補和分析已在 SPSS 中完成,但 SPSS 不提供一些統計數據的匯總結果,包括 F 值、協方差矩陣、R 平方等。
我已經嘗試通過冒險進入 R 或嘗試可用但未成功解決問題的宏(例如,在將 Mice 中超過 5 個插補的統計數據池化時遇到問題)來解決這個問題。
在這一點上,我想嘗試手動計算這些,應用魯賓規則,使用 SPSS 生成的輸出。但是,我不確定如何得出插補內方差() 基於 SPSS 生成的輸出。
我真的很感激對此的詳細說明。
魯賓規則只能應用於服從正態分佈的參數。對於具有 F 或卡方分佈的參數,需要一組不同的公式:
- 艾莉森,PD(2002 年)。缺失數據。加利福尼亞州紐伯里公園:聖人。
要在多個估算數據集上執行 ANOVA,您可以使用 R 包 mouseadds ( pdf ;
miceadds::mi.anova
)。更新 1
這是一個完整的例子:
- 將數據從 SPSS 導出到 R。在 Spss 中,將數據集保存為 .csv
- 讀入你的數據集:
library(miceadds) dat <– read.csv(file='your-dataset.csv')
讓我們假設, $ reading $ 是你的因變量,你有兩個因素
- 性別,男性 = 0,女性 = 1
- 治療, 控制 = 0 和“接受治療” = 1
現在讓我們將它們轉換為因子:
dat$gender <- factor(dat$gender) dat$treatment <- factor(dat$treatment)
- 將您的數據集轉換為 mids 對象,我們假設第一個變量包含插補數(SPSS 中的 Imputation_):
dat.mids <- as.mids(dat)
- 現在您可以執行方差分析:
fit <- mi.anova(mi.res=dat.mids, formula="reading~gender*treatment", type=3) summary(fit)
更新 2 這是對您的第二條評論的回复:
您在這裡描述的是 SPSS 和 R 之間的數據導入/導出相關問題。您可以嘗試將
.sav
文件直接導入 R,並且有一堆專用包:、、、、foreign
等rio
。我更喜歡 csv 方式,但這是一個品味問題和/或取決於您的問題的性質。也許您還應該查看 youtube 上的一些教程或互聯網上的其他資源。gdata``Hmisc
library(foreign) dat <- read.spss(file='path-to-sav', use.value.labels=F, to.data.frame=T)
更新 3 這是對您的第一條評論的回复:
是的,您可以在 SPSS 中進行分析並將 F 值匯集到其中
miceadds
(請注意,此示例取自miceadds::micombine.F
幫助頁面):library(miceadds) Fvalues <- c(6.76 , 4.54 , 4.23 , 5.45 , 4.78, 6.76 , 4.54 , 4.23 , 5.45 , 4.78, 6.76 , 4.54 , 4.23 , 5.45 , 4.78, 6.76 , 4.54 , 4.23 , 5.45 , 4.78 ) micombine(Fvalues, df1=4)