Spearman秩相关性小于4个观测值?
我目前正在尝试使用X数据集和Y数据集运行spearman秩相关测试,这两个数据集都包含3行(个体)。我可以用cor()运行Spearman并获得值,它们都是:-1、.5、-5或1。这对我来说似乎不太合适。。我在数据集中没有0。但是,当我使用rcorr()时,它会给我一个错误:Spearman秩相关性小于4个观测值?,r,statistics,correlation,R,Statistics,Correlation,我目前正在尝试使用X数据集和Y数据集运行spearman秩相关测试,这两个数据集都包含3行(个体)。我可以用cor()运行Spearman并获得值,它们都是:-1、.5、-5或1。这对我来说似乎不太合适。。我在数据集中没有0。但是,当我使用rcorr()时,它会给我一个错误: Error in rcorr(BPT2, y = FunT2, type = "spearman") : must have >4 observations 我正在比较肠道细菌门(my)和代谢读数(my) 所
Error in rcorr(BPT2, y = FunT2, type = "spearman") :
must have >4 observations
我正在比较肠道细菌门(my)和代谢读数(my)
所以我的问题是:
谢谢 您是对的,只有四种可能的输出。这是因为只有6个场景可能与3个观测值进行秩相关 如果我们将x常数保持为
1:3
,则y有6个可能的秩值(按行读取):
计算X和Y之间的每个相关性时,只有以下可能的返回:
apply(df, 1, function(x){cor(1:3, x)})
1 2 3 4 5 6
-1.0 -0.5 -0.5 0.5 0.5 1.0
因为两个重复,所以得到4个值
因此-从数学上讲,计算是可能的,但它在描述分布时不是很有用。如果需要代码疑难解答帮助,您应该在问题中提供答案。如果您询问的是正确的统计分析,则该类型的问题属于,而不是堆栈溢出(如果您使用了statistics标记,这是一个很好的迹象,您可能位于标记描述本身所说的错误站点。)
apply(df, 1, function(x){cor(1:3, x)})
1 2 3 4 5 6
-1.0 -0.5 -0.5 0.5 0.5 1.0