cohenW function

Cohen's w (omega)

Cohen's w (omega)

Calculates Cohen's w for a table of nominal variables.

cohenW( x, y = NULL, p = NULL, ci = FALSE, conf = 0.95, type = "perc", R = 1000, histogram = FALSE, digits = 4, reportIncomplete = FALSE, ... )

Arguments

  • x: Either a two-way table or a two-way matrix. Can also be a vector of observations for one dimension of a two-way table.

  • y: If x is a vector, y is the vector of observations for the second dimension of a two-way table.

  • p: If x is a vector of observed counts, p can be given as a vector of theoretical probabilties, as in a chi-square goodness of fit test.

  • ci: If TRUE, returns confidence intervals by bootstrap. May be slow.

  • conf: The level for the confidence interval.

  • type: The type of confidence interval to use. Can be any of "norm", "basic", "perc", or "bca". Passed to boot.ci.

  • R: The number of replications to use for bootstrap.

  • histogram: If TRUE, produces a histogram of bootstrapped values.

  • digits: The number of significant digits in the output.

  • reportIncomplete: If FALSE (the default), NA will be reported in cases where there are instances of the calculation of the statistic failing during the bootstrap procedure. In the case of the goodness-of-fit scenario, setting this to TRUE

    will have no effect.

  • ...: Additional arguments passed to chisq.test.

Returns

A single statistic, Cohen's w. Or a small data frame consisting of Cohen's w, and the lower and upper confidence limits.

Details

Cohen's w is used as a measure of association between two nominal variables, or as an effect size for a chi-square test of association. For a 2 x 2 table, the absolute value of the phi statistic is the same as Cohen's w. The value of Cohen's w is not bound by 1 on the upper end.

Cohen's w is "naturally nondirectional". That is, the value will always be zero or positive. Because of this, if type="perc", the confidence interval will never cross zero. The confidence interval range should not be used for statistical inference. However, if type="norm", the confidence interval may cross zero.

When w is close to 0 or very large, or with small counts, the confidence intervals determined by this method may not be reliable, or the procedure may fail.

Examples

### Example with table data(Anderson) fisher.test(Anderson) cohenW(Anderson) ### Example for goodness-of-fit ### Bird foraging example, Handbook of Biological Statistics observed = c(70, 79, 3, 4) expected = c(0.54, 0.40, 0.05, 0.01) chisq.test(observed, p = expected) cohenW(observed, p = expected) ### Example with two vectors Species = c(rep("Species1", 16), rep("Species2", 16)) Color = c(rep(c("blue", "blue", "blue", "green"),4), rep(c("green", "green", "green", "blue"),4)) fisher.test(Species, Color) cohenW(Species, Color)

References

https://rcompanion.org/handbook/H_10.html

Cohen J. 1992. "A Power Primer". Psychological Bulletin 12(1): 155-159.

Cohen, J. 1988. Statistical Power Analysis for the Behavioral Sciences, 2nd Ed. Routledge.

See Also

cramerV

Author(s)

Salvatore Mangiafico, mangiafico@njaes.rutgers.edu