具有 abline 函数的散点图与 Spearman 的 rho 不匹配

Scatterplot with abline function is not matching Spearman's rho

我需要 运行 两个变量之间与 Spearman 的相关性,然后用 R 中的散点图绘制结果。 我知道通常正 rho 与散点图中的上升趋势线相关联,负值与下降趋势线相关联。

但是,我得到了正 rho(rho = 0.02,p = 0.91) 以及趋势线下降的散点图,如下图所示。

下面给出了我使用的代码,可以找到数据集here

cor.test(Finale_from_trials_online$Mean_lat_LG, Finale_from_trials_online$Mean_Lat_cue_1, method = "spearman", exact = FALSE) 

plot(Finale_from_trials$Mean_Lat_cue_1, Finale_from_trials$Mean_lat_LG, main="LG and cue 1",
     xlab="Mean latency 1", ylab="Mean latency LG", pch=19) 
abline(lm(Finale_from_trials$Mean_lat_LG~Finale_from_trials$Mean_Lat_cue_1), col="red") # regression line (y~x)

我在代码中做错了什么吗? 问题是否与 abline 参数中的 lm 有关,因为 Spearman 只是检查单调相关性,而我正在绘制线性趋势线?

还是p值那么大,结果不显着呢?

有人知道为什么高 p 值会导致这种情况吗?

Spearman 的 r 是使用值的排名计算的。这就是为什么图左侧具有较大 y 值的离群值被数量更多且 y 值略低于图左侧的异常值所抵消的原因。但正如您所指出的,r 值非常小,根据您的假设检验,您无法判断 Spearman 的 r 是否真的不同于 0。

相比之下,您包含的线性模型对这些异常值很敏感。事实上,双变量线性模型始终具有与 Pearson r 相同的 beta 符号,因为两种情况下的符号均来自协方差。如果你用 method = "pearson"cor.test() 你会发现它是负数。然而,由于 Spearman 的 r 不是基于这些符号可能不同的协方差。