我有一张看起来像这样的桌子。
> dput(theft_loc)
structure(c(13704L, 14059L, 14263L, 14450L, 14057L, 15503L, 14230L,
16758L, 15289L, 15499L, 16066L, 15905L, 18531L, 19217L, 12410L,
13398L, 13308L, 13455L, 13083L, 14111L, 13068L, 19569L, 18771L,
19626L, 20290L, 19816L, 20923L, 20466L, 20517L, 19377L, 20035L,
20504L, 20393L, 22409L, 22289L, 7997L, 8106L, 7971L, 8437L, 8246L,
9090L, 8363L, 7934L, 7874L, 7909L, 8150L, 8191L, 8746L, 8277L,
27194L, 25220L, 26034L, 27080L, 27334L, 30819L, 30633L, 10452L,
10848L, 11301L, 11494L, 11265L, 11985L, 11038L, 12104L, 13368L,
14594L, 14702L, 13891L, 12891L, 12939L), .Dim = c(7L, 10L), .Dimnames = structure(list(
c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"), c("BAYVIEW", "CENTRAL", "INGLESIDE",
"MISSION", "NORTHERN", "PARK", "RICHMOND", "SOUTHERN", "TARAVAL",
"TENDERLOIN")), .Names = c("", "")), class = "table")
我运行了
chisq.test
,结果显着。我现在想运行一些成对测试来看看重要性在哪里。我尝试使用 fifer
包和 chisq.post.test
函数,但出现错误,提示 out of workspace
。
还有哪些其他方法可以运行多重比较测试?
这将起作用(在事后测试中尝试使用
chisq.test
而不是默认的 fisher.test
(准确)):
(Xsq <- chisq.test(theft_loc)) # Prints test summary, p-value very small,
# Pearson's Chi-squared test
# data: theft_loc
# X-squared = 1580.1, df = 54, p-value < 2.2e-16 # reject null hypothesis for independence
library(fifer)
chisq.post.hoc(theft_loc, test='chisq.test')
有输出
Adjusted p-values used the fdr method.
comparison raw.p adj.p
1 Sunday vs. Monday 0.0000 0.0000
2 Sunday vs. Tuesday 0.0000 0.0000
3 Sunday vs. Wednesday 0.0000 0.0000
4 Sunday vs. Thursday 0.0000 0.0000
5 Sunday vs. Friday 0.0000 0.0000
6 Sunday vs. Saturday 0.0000 0.0000
7 Monday vs. Tuesday 0.0000 0.0000
8 Monday vs. Wednesday 0.0000 0.0000
9 Monday vs. Thursday 0.0000 0.0000
10 Monday vs. Friday 0.0000 0.0000
11 Monday vs. Saturday 0.0000 0.0000
12 Tuesday vs. Wednesday 0.1451 0.1451
13 Tuesday vs. Thursday 0.0000 0.0000
14 Tuesday vs. Friday 0.0000 0.0000
15 Tuesday vs. Saturday 0.0000 0.0000
16 Wednesday vs. Thursday 0.0016 0.0017
17 Wednesday vs. Friday 0.0000 0.0000
18 Wednesday vs. Saturday 0.0000 0.0000
19 Thursday vs. Friday 0.0000 0.0000
20 Thursday vs. Saturday 0.0000 0.0000
21 Friday vs. Saturday 0.0000 0.0000
正如我们所看到的,除了一对之外的所有成对测试都是显着的,我们也可以使用不同的
p-value-correction
(通过将control
从默认的fdr
更改为bonferroni
)。
由于
fifer
不再维护,这里有一个解决方案RVAideMemoire
(这里有更详细的描述https://rdrr.io/cran/RVAideMemoire/src/R/chisq.multcomp.R):
install.packages("RVAideMemoire")
library(RVAideMemoire)
chisq.multcomp(theft_loc, p.method = "none")
> 7874 7909 7934 7971 7997 8106 8150 8191 8246 8277 8363 8437 8746 9090 10452 10848 11038 11265 11301
7909 0.78056 - - - - - - - - - - - - - - - - - -
7934 0.63321 0.84256 - - - - - - - - - - - - - - - - -
7971 0.44095 0.62272 0.76923 - - - - - - - - - - - - - - - -
7997 0.32889 0.48533 0.61768 0.83698 - - - - - - - - - - - - - - -
8106 0.06647 0.11954 0.17444 0.28701 0.39036 - - - - - - - - - - - - - -
8150 0.02923 0.05720 0.08854 0.15860 0.22857 0.73002 - - - - - - - - - - - - -
8191 0.01238 0.02625 0.04298 0.08354 0.12732 0.50552 0.74841 - - - - - - - - - - - -
8246 0.00339 0.00802 0.01417 0.03081 0.05073 0.27360 0.45342 0.66793 - - - - - - - - - - -
8277 0.00152 0.00382 0.00706 0.01637 0.02817 0.18156 0.32174 0.50276 0.80943 - - - - - - - - - -
8363 0.00012 0.00037 0.00078 0.00216 0.00422 0.04522 0.09741 0.18128 0.36396 0.50497 - - - - - - - - -
8437 1.0e-05 3.6e-05 8.5e-05 0.00027 0.00060 0.01007 0.02585 0.05643 0.13921 0.21586 0.56805 - - - - - - - -
8746 1.3e-11 8.8e-11 3.2e-10 2.0e-09 7.1e-09 8.2e-07 4.5e-06 2.0e-05 0.00013 0.00032 0.00341 0.01841 - - - - - - -
9090 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 6.2e-14 8.1e-13 8.0e-12 1.5e-10 6.9e-10 3.7e-08 8.1e-07 0.01000 - - - - - -
10452 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 - - - - -
类别替换为每个类别的计数。 我不喜欢对多重比较进行更正(请参阅下面的参考文献进行讨论),但是
fdr
是可用的。
莫兰,医学博士(2003)。在生态研究中拒绝顺序 Bonferroni 的论点。奥伊科斯。
chisq.multcomp 确实提供了成对比较,但事实上您不再拥有类别标签,这确实很不方便。一个不错的选择是 rstatix 包中的pairwise_prop_test() https://cran.r-project.org/web/packages/rstatix/index.html stats 中的pairwise.prop.test()也很好https://rdrr.io/r/stats/pairwise.prop.test.html 两者都有 bonferroni 校正