分析排名数据:相关性和因子分析?

机器算法验证 r 因子分析 排行 斯皮尔曼罗
2022-04-09 10:27:52

我让调查受访者按重要性顺序对一系列项目进行排名,从 1 到 7。因此,如果受访者将 1 分分配给一个变量,那么其他变量也不会得到 1。数据集在下面的 test.data 中复制。我有三个问题:

  1. 我应该将其解释为排名数据而不是区间数据吗?我想是的,但我不确定。
  2. 如果它们是排名数据,使用 Wilcoxon-Mann-Whitney U 或 Kruskal-Wallis 检验根据预测变量的水平来检验中位数 (?) 排名的差异是否明智?
  3. 如果它们是排名数据,我可以使用 Spearman 的 Rho 构建相关矩阵吗?
  4. 如果可能的话,我是否可以对该相关矩阵使用因子分析来可能减少数据集并测量一些假设的基础结构?

我已经尝试使用以下步骤基本上完成这些步骤,尽管我现在看到有一篇论文和一个 R 包建议对排名数据执行因子分析的可能性。

用于排名数据 Yu、Lam 和 Lo 2005的 R 包

谢谢你的建议。

library(psych)
#Create Data frame
test.data<-replicate(10, sample(seq(1,6,1), replace=F))

#transpose
test.data<-t(test.data)

#data frame
test.data<-data.frame(test.data)

#Provide names
names(test.data)<-c('item1', 'item2', 'item3', 'item4', 'item5', 'item6’)

#Some predictors
test.data$gender<-factor(sample(c('M', 'F'), replace=T,size=10))
    test.data$position<-factor(sample(c('Journ', 'Pol'), replace=T, size=10))

#Correlation Matrix
cor.matrix<-cor(test.data[,1:6], method=c('spearman'))

#Factor Analysis
plot(eigen(cor.matrix)$values, type='o')

fa(cor.matrix, method='pa', rotate='none', nobs=nrow(test.data))

#Kruskal-Wallis or Mann-Whitney depending on predictor levels
lapply(test.data[,1:6], function(x) kruskal.test(x~position, data=test.data))
1个回答
  1. 是的。但是,很少有排名被视为区间数据并通过参数程序(例如 ANOVA)进行分析。例如,这通常在经典联合分析中完成。从概念上讲,从心理测量学上讲,排名是有序的,而评级可能是区间的(尽管通常也被谨慎地视为序数)。尽管如此,在统计上两者都只是定量尺度上的数字,因此,除非特别的统计假设被强烈违反,否则它们可以以相同的方式处理。特别是通过单变量分析。请注意,如果有人分别考虑您在示例中生成的 6 个变量中的每一个,他将无法说出它们是“排名”还是“评级”。
  2. 是的。但是,这些测试也适用于区间数据。
  3. 是的。然而,Spearman 对区间数据也很敏感,可以捕捉非线性单调关系。
  4. 不可以。经典(线性)因子分析仅适用于 Pearson 相关性(以及类似的 SSCP 型测量,另请阅读)。Spearman 基于非线性转换的值、排名(不是您原来的“排名”、排名——而是程序内部产生的排名)。线性 FA 会错误地“认为”那些转换后的值是原始值或线性转换后的原始值,并且会“发现”实际上不是线性的甚至不存在于您的实际数据中的线性基础结构。所以使用 Pearson - 如果您敢于将 rakings 数据视为收视率数据。或者,存在用于分类数据的特殊因子分析程序,例如对多变量相关性的因子分析、IRT 因子分析、具有最佳比例的 PCA (CATPCA)。

无论您对排名数据进行何种因子分析或其他多变量分析,您都应该意识到排名任务的有序多项式(无关联)性质会在数据中引起负相关。例如,在您的代码中,您生成 6 个变量,这些变量从 1 到 6 随机排列。变量之间的预期相关性将是 all -1/(6-1) = -0.2另请参阅,关于一般的比较数据>)如果这些是评级,那么预期的相关性将是全部0我说的是基线或背景相关性——在没有实质性感兴趣因素的情况下预期。一般来说,背景一般因素的存在并不排除进行因素分析,但这可能是一个复杂的问题——如何以最佳方式处理它。