R 对象';w';在因子分析中未发现与包';心理学&x27;
在这些页面上有很多关于因子分析的问题。我已经浏览了他们,但没有什么相似的,所以希望有人能帮助 我正在对一些调查问题进行因子分析,我预计会出现一些潜在的结构。我正在运行主轴或R 对象';w';在因子分析中未发现与包';心理学&x27;,r,categorical-data,factor-analysis,R,Categorical Data,Factor Analysis,在这些页面上有很多关于因子分析的问题。我已经浏览了他们,但没有什么相似的,所以希望有人能帮助 我正在对一些调查问题进行因子分析,我预计会出现一些潜在的结构。我正在运行主轴或minres并遇到相同的问题,如下所述 我的数据集包含许多离散变量和相当数量的缺失变量(编码为NA),但即使删除了所有NA,问题仍然存在: minres.out <- factor.minres(r = res, nfactors = 5, residuals=F, rotate = "varimax", n.obs=N
minres
并遇到相同的问题,如下所述
我的数据集包含许多离散变量和相当数量的缺失变量(编码为NA
),但即使删除了所有NA
,问题仍然存在:
minres.out <- factor.minres(r = res, nfactors = 5, residuals=F, rotate = "varimax", n.obs=NA, scores=F, SMC=T, missing=F, min.err=0.001, ,max.iter=50, symmetric=T,warnings=T,fm="minres")
minres.out
minres.out2 <- fa(r = res, nfactors = 5, residuals=F, rotate = "oblimin", n.obs=NA, scores=F, SMC=T, missing=F, impute="median",min.err=0.001, ,max.iter=50, symmetric=T,warnings=T,fm="minres", alpha=0.1, p=0.05,oblique.scores=F, use="pairwise")
minres.out2
我的数据中没有对象w
,但我并不真正理解这个对象最初是什么意思
运行traceback()
可以提供:
3: factor.scores(x.matrix, f = Structure, method = scores)
2: fac(r = r, nfactors = nfactors, n.obs = n.obs, rotate = rotate,
scores = scores, residuals = residuals, SMC = SMC, covar = covar,
missing = FALSE, impute = impute, min.err = min.err, max.iter = max.iter,
symmetric = symmetric, warnings = warnings, fm = fm, alpha = alpha,
oblique.scores = oblique.scores, np.obs = np.obs, use = use,
...)
1: fa(r = res, nfactors = 5, residuals = F, rotate = "oblimin",
n.obs = NA, scores = F, SMC = T, missing = F, impute = "median",
min.err = 0.001, , max.iter = 50, symmetric = T, warnings = T,
fm = "minres", alpha = 0.1, p = 0.05, oblique.scores = F,
use = "pairwise")
对我来说不是很有启发性。
关于这个问题有什么建议吗?我逐行检查了代码。似乎
scores
不能作为参数传递给factor.scores
函数。它通过一个switch语句,没有一个分支被激活,因此您最终没有w
的值,这导致它失败。您可以尝试将以下愚蠢的修复程序复制并粘贴到R会话中,然后再次运行代码:
fa <- function(r, nfactors = 1, n.obs = NA, n.iter = 1, rotate = "oblimin",
scores = "regression", residuals = FALSE, SMC = TRUE, covar = FALSE,
missing = FALSE, impute = "median", min.err = 0.001, max.iter = 50,
symmetric = TRUE, warnings = TRUE, fm = "minres", alpha = 0.1,
p = 0.05, oblique.scores = FALSE, np.obs = NULL, use = "pairwise",
...){
scores <- c("a","b")
psych::fa(r, nfactors = 1, n.obs = NA, n.iter = 1, rotate = "oblimin",
scores = "regression", residuals = FALSE, SMC = TRUE, covar = FALSE,
missing = FALSE, impute = "median", min.err = 0.001, max.iter = 50,
symmetric = TRUE, warnings = TRUE, fm = "minres", alpha = 0.1,
p = 0.05, oblique.scores = FALSE, np.obs = NULL, use = "pairwise",
...)
}
fa我也有同样的错误。我的问题是因为我试图通过“回归”而不是“回归”来计算分数。因此,确保传递给分数的是一个可接受的参数选项 我想把这个问题发送到SO站点,因为它纯粹是与R
相关的。如果你提供数据——让这里的人们能够在R
或其他他们喜欢的程序中查看数据——这将证明这个问题是统计性的。(始终显示数据表。)这应该作为对原始帖子的评论发布,这不是完整的答案。
fa <- function(r, nfactors = 1, n.obs = NA, n.iter = 1, rotate = "oblimin",
scores = "regression", residuals = FALSE, SMC = TRUE, covar = FALSE,
missing = FALSE, impute = "median", min.err = 0.001, max.iter = 50,
symmetric = TRUE, warnings = TRUE, fm = "minres", alpha = 0.1,
p = 0.05, oblique.scores = FALSE, np.obs = NULL, use = "pairwise",
...){
scores <- c("a","b")
psych::fa(r, nfactors = 1, n.obs = NA, n.iter = 1, rotate = "oblimin",
scores = "regression", residuals = FALSE, SMC = TRUE, covar = FALSE,
missing = FALSE, impute = "median", min.err = 0.001, max.iter = 50,
symmetric = TRUE, warnings = TRUE, fm = "minres", alpha = 0.1,
p = 0.05, oblique.scores = FALSE, np.obs = NULL, use = "pairwise",
...)
}