使用polycor包获取多色相关矩阵,但只能获取Pearson相关

时间:2019-05-10 19:51:51

标签: r

我是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)

1 个答案:

答案 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,没有大写字母。