【发布时间】:2021-10-22 02:08:02
【问题描述】:
我有一个包含两个因素的独立样本 t 检验的大数据,其中一个是性别。我希望它检查变量中每个组的正态性以决定下一步。所以我采用了我在这个论坛中找到的以下脚本并进行了一些修改。
for (i in 9:ncol(AF)) {
print(names(AF)[i])
print(AF %>%
group_by(Gender) %>%
summarise(`W Statistic` = ifelse(sd(AF[, i])!=0,
shapiro.test(AF[, i])$statistic,NA),
`p-value` = ifelse(sd(AF[, i])!=0,
shapiro.test(AF[, i])$p.value,NA)))
}
第一个变量 (R_44) 的结果如下:
## [1] "R_44"
## # A tibble: 2 × 3
## Gender Statistic `p-value`
## <fct> <dbl> <dbl>
## 1 F 0.560 9.31e-10
## 2 M 0.560 9.31e-10
我记得在我开始工作时这个变量是使用 JASP 进行正常性检查的,但它是不同的。
在 JASP 中结果不同:
## 1 F 0.465 1.559e -7
## 2 M 0.623 5.149e -6
我在 R 中对相同的变量重复了测试,但没有如下循环函数:
shapiro.test(AF$R_44[AF$Gender == "F"])
shapiro.test(AF$R_44[AF$Gender == "M"])
结果是:
data: AF$R_44[AF$Gender == "F"]
W = 0.46505, p-value = 1.559e-07
data: AF$R_44[AF$Gender == "M"]
W = 0.62303, p-value = 5.149e-06
类似于 JASP。因此,我假设我在上面的第一个脚本中有一个错误,但我不确定它在哪里。在这里需要帮助!
【问题讨论】:
标签: r statistics static-analysis