【发布时间】:2020-10-27 03:21:11
【问题描述】:
我是使用 R 的初学者。当我尝试计算多个子量表的 Cronbach's alpha 时,我很吃力。我正在使用 psych 包来做到这一点。
这是我的数据库的示例: 我有 2 个不同的分量表。子量表 A 包括项目 1 到 3,子量表 B 包括项目 4 到 5。
Subscale Student Item1 Item2 Item3 Item4 Item5
A 1 1 0 1 NA NA
A 2 0 1 1 NA NA
A 3 1 1 1 NA NA
B 1 NA NA NA 1 1
B 2 NA NA NA 1 0
B 3 NA NA NA 0 0
同时计算每个分量表的 Cronbach's alpha。我尝试使用 psych 包。
Reliability <- group_by(df,Subscale) %>%
alpha()
但是,我收到以下错误: 具有缺失值的可能变量是 Item4 Item5 主体错误(x,分数 = FALSE): 抱歉:相关矩阵中的缺失值 (NA) 不允许我继续。 请删除这些变量,然后重试。 另外:警告信息: 1:在 var(if (is.vector(x) || is.factor(x)) x else as.double(x), na.rm = na.rm) 中: 强制引入的 NA 2:在 alpha(.) 中:Item = Subscale 没有方差并被删除
是否可以在计算这些子量表的 Cronbach's alpha 的同时创建一个新的数据框或包含结果的列表?还是应该使用 split 函数将两个子尺度分开并分别计算每个子尺度的 alpha?
提前致谢!
【问题讨论】:
-
在显示的数据中,没有名为“Section”的列,是“Subscale”吗?
-
试试
library(dplyr);library(purrr);df %>% select(-Student) %>% group_split(Subscale) %>% map(~ alpha(.[-1])) -
我犯了一个错误,但部分表示子尺度。我只是在问题中编辑它。对不起!