初学者R用户在这里。我正在使用cor函数来获取数据帧2列之间的Kendal的tau-b等级相关系数。这些列的示例如下:

A    B
1    1
1    2
1    3


当我使用cor(d,method="kendall")

结果是NA与A和B之间的相关性。它不应该为0吗?如果没有,我可以使用cor函数中的参数将NA结果替换为0吗?

最佳答案

考虑一下如果我们稍微扰动常数列会发生什么。根据所使用的特定扰动,我们获得了截然不同的解决方案。实际上,我们可以得到我们喜欢的具有不同扰动的任何相关性。结果,对于关联使用任何特定值确实没有任何意义,最好将其保留为NA。

x <- c(1, 1, 1)
y <- 1:3

cor(x + (1:3) * 1e-10, y, method = "spearman")
## [1] 1

cor(x - (1:3) * 1e-10, y, method = "spearman")
## [1] -1

关于r - 由于方差为0,cor函数具有NA值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58044515/

10-12 17:13