我是R编程的新手,正在尝试使用polycor软件包创建多色相关矩阵。我使polycor函数运行时没有错误消息,但是有些不对劲,因为即使我有9个变量,我也只返回了一个数字。如果我使用hetcor,则会得到一个相关矩阵,但是所有相关都指定为Pearson相关。变量是有序的并且是非正态分布的(因此我必须在后续因素分析中针对非正态性进行调整);我不明白为什么我要获得Pearson相关而不是多色相关。我为每个功能使用的代码如下。如果有人对如何强制hetcorr给我多变量相关性提出建议,或者有人知道为什么polychor返回单个值,我将不胜感激。谢谢!
Polycor::polychor (GTP5, ML=FALSE, std.err=FALSE, maxcor=.9999)
Polycor::hetcor (GTP5, ML=FALSE, std.err=TRUE)
答案 0 :(得分:0)
polycor::polychor
文档建议您需要提供两个有序的分类变量,或一个计数列联表。因此,它不会自动为每个变量计算成对相关性。可能是将您的数据框解析为一个大的列联表。
Usage:
polychor(x, y, ML = FALSE, control = list(), std.err = FALSE, maxcor=.9999)
Arguments:
x: a contingency table of counts or an ordered categorical
variable; the latter can be numeric, logical, a factor, or an
ordered factor, but if a factor, its levels should be in
proper order.
y: if ‘x’ is a variable, a second ordered categorical variable.
您必须为每对变量调用一次此函数。 Here's an SO post on applying functions across all pairwise combinations of columns
p.s。包装是polycor
,没有大写字母。