fisher.posthoc: Pairwise tests of independence for nominal data

View source: R/stats.R

fisher.posthocR Documentation

Pairwise tests of independence for nominal data

Description

Conducts pairwise tests for a 2-dimensional matrix, in which at at least one dimension has more than two levels, as a post-hoc test. Conducts Fisher exact, Chi-square, or G-test.

Usage

fisher.posthoc(
  x,
  compare = "row",
  fisher = TRUE,
  gtest = TRUE,
  chisq = TRUE,
  method = "fdr",
  correct = "none",
  cramer = FALSE,
  digits = 3,
  ...
)

Arguments

x

A two-way contingency table. At least one dimension should have more than two levels.

compare

If "row", treats the rows as the grouping variable. If "column", treats the columns as the grouping variable.

fisher

If "TRUE", conducts fisher exact test.

gtest

If "TRUE", conducts G-test.

chisq

If "TRUE", conducts Chi-square test of association.

method

The method to adjust multiple p-values. See stats::p.adjust.

correct

The correction method to pass to DescTools::GTest.

cramer

If "TRUE", includes and effect size, Cramer's V in the output. –jerry,does not support this because of cramerV() from the rcompansion package not included in this function

digits

The number of significant digits in the output.

...

Additional arguments, passed to stats::fisher.test, DescTools::GTest, or stats::chisq.test.

Value

A data frame of comparisons, p-values, and adjusted p-values.

Author(s)

Salvatore Mangiafico, mangiafico@njaes.rutgers.edu

References

http://rcompanion.org/handbook/H_04.html

See Also

pairwiseMcnemar, groupwiseCMH, nominalSymmetryTest, pairwiseNominalMatrix

Examples

# posthoc for fisher, essentially fisher and then apply fdr correction
# pairwiseNominalIndependence from rcompansion
# nbk %>% ez.factorelevel(c('dx','race'))->tmp
# table(tmp$dx,tmp$race) %>% fisher.posthoc()
# note: table(tmp$race,tmp$dx) %>% fisher.posthoc() is different
# also similar function from RVAideMemoire::fisher.multcomp
# but this funciton can do all (fisher, chisq and g-test)

### Independence test for a 4 x 2 matrix
data(Anderson)
fisher.test(Anderson)
Anderson = Anderson[(c("Heimlich", "Bloom", "Dougal", "Cobblestone")),]
PT = fisher.posthoc(Anderson,
                                 fisher = TRUE,
                                 gtest  = FALSE,
                                 chisq  = FALSE,
                                 cramer = TRUE)
PT
cldList(comparison = PT$Comparison,
        p.value    = PT$p.adj.Fisher,
        threshold  = 0.05)



jerryzhujian9/zmisc documentation built on March 9, 2024, 12:49 a.m.