许多非参数检验与排名数据上的参数等效项相同。至少,这是我从这篇关于弗里德曼测试的博文和浏览这篇 1981 年的文章中学到的。. 这似乎非常实用,尤其是出于教学目的。但是我找不到任何这种等价的证明,所以我决定自己尝试一下。
然而,虽然它们匹配得很紧密,但它们并不完全匹配,而且对于配对样本,差异很大。我错过了什么还是这种“等价”不完美?这里有几个例子:
# generate two dependent samples.
set.seed(42)
x1 = rnorm(20)
x2 = x1 + rnorm(20, 1, 4)
x = data.frame(score=c(x1,x2), time=rep(c('pre', 'post'), each=20))
# Correlation of ranks. Exact correlation.
# p_spearman=0.0074, p_pearson=0.0064
cor.test(x1, x2, method='spearman')
cor.test(rank(x1), rank(x2), method='pearson')
# Unpaired samples between-subjects-difference test.
# p_wilcox=0.718, p_t-test=0.711
wilcox.test(x$score ~ x$time)
t.test(rank(x$score) ~ x$time)
# Paired samples within-subject-difference test. Bad p-value?
# p_mann-whitney=0.927, p_t-test=1.00
wilcox.test(x1, x2, paired=T)
t.test(rank(x1), rank(x2), paired=T)