硬币包装错误或错误提出问题?

时间:2011-09-21 07:29:41

标签: r

在硬币包中使用权重参数时,我得到了一些不一致的结果。特别是对于kruskal_test和spearman_test函数。

使用常规数据一切正常并且与stats包中的kruskal.test一致:

> x <- xtabs( ~gear + vs,data=mtcars)
> df <- as.data.frame.table(x)
> kruskal_test(gear ~ as.factor(vs),data=mtcars)

    Asymptotic Kruskal-Wallis Test

data:  gear by as.factor(vs) (0, 1) 
chi-squared = 2.4768, df = 1, p-value = 0.1155
> kruskal.test(gear ~ as.factor(vs),data=mtcars)

    Kruskal-Wallis rank sum test

data:  gear by as.factor(vs) 
Kruskal-Wallis chi-squared = 2.4768, df = 1, p-value = 0.1155

但是,当使用频率权重向kruskal_test提供相同的数据时,我得到的结果不正确。

> kruskal_test(as.numeric(df[[1]]) ~ df[[2]],
+ weights=~as.integer(df[[3]]))

    Asymptotic Kruskal-Wallis Test

data:  as.numeric(df[[1]]) by df[[2]] (0, 1) 
chi-squared = 1.3158, df = 1, p-value = 0.2513

我设置此函数调用的方式有问题吗?

1 个答案:

答案 0 :(得分:1)

这确实是一个错误。托尔斯滕回答说,等级变换没有考虑到权重。以下代码演示了测试的非排名版本,产生相同的结果:

> oneway_test(as.integer(gear) ~ vs, data = df, weights  = ~ Freq)

    Asymptotic 2-Sample Permutation Test

data:  as.integer(gear) by vs (0, 1) 
Z = -1.1471, p-value = 0.2513
alternative hypothesis: true mu is not equal to 0 

希望将来能够解决这个问题。