phi | R Documentation |

Compute phi (*φ*), Cramer's *V*, Tschuprow's *T*, Cohen's *w*,
פ (Fei), Pearson's contingency coefficient for
contingency tables or goodness-of-fit. Pair with any reported
`stats::chisq.test()`

.

phi(x, y = NULL, adjust = TRUE, ci = 0.95, alternative = "greater", ...) cramers_v(x, y = NULL, adjust = TRUE, ci = 0.95, alternative = "greater", ...) tschuprows_t(x, y = NULL, ci = 0.95, alternative = "greater", ...) cohens_w( x, y = NULL, p = rep(1, length(x)), ci = 0.95, alternative = "greater", ... ) fei(x, p = rep(1, length(x)), ci = 0.95, alternative = "greater", ...) pearsons_c( x, y = NULL, p = rep(1, length(x)), ci = 0.95, alternative = "greater", ... )

`x` |
a numeric vector or matrix. |

`y` |
a numeric vector; ignored if |

`adjust` |
Should the effect size be bias-corrected? Defaults to |

`ci` |
Confidence Interval (CI) level |

`alternative` |
a character string specifying the alternative hypothesis;
Controls the type of CI returned: |

`...` |
Ignored. |

`p` |
a vector of probabilities of the same length as |

phi (*φ*), Cramer's *V*, Tschuprow's *T*, Cohen's *w*, and Pearson's
*C* are effect sizes for tests of independence in 2D contingency tables. For
2-by-2 tables, phi, Cramer's *V*, Tschuprow's *T*, and Cohen's *w* are
identical, and are equal to the simple correlation between two dichotomous
variables, ranging between 0 (no dependence) and 1 (perfect dependence).

For larger tables, Cramer's *V*, Tschuprow's *T* or Pearson's *C* should be
used, as they are bounded between 0-1. (Cohen's *w* can also be used, but
since it is not bounded at 1 (can be larger) its interpretation is more
difficult.) For square table, Cramer's *V* and Tschuprow's *T* give the same
results, but for non-square tables Tschuprow's *T* is more conservative:
while *V* will be 1 if either columns are fully dependent on rows (for each
column, there is only one non-0 cell) *or* rows are fully dependent on
columns, *T* will only be 1 if both are true.

For goodness-of-fit in 1D tables Cohen's *W*, פ (Fei)
or Pearson's *C* can be used. Cohen's *w* has no upper bound (can be
arbitrarily large, depending on the expected distribution). *Fei* is an
adjusted Cohen's *w*, accounting for the expected distribution, making it
bounded between 0-1. Pearson's *C* is also bounded between 0-1.

To summarize, for correlation-like effect sizes, we recommend:

For a 2x2 table, use

`phi()`

For larger tables, use

`cramers_v()`

For goodness-of-fit, use

`fei()`

A data frame with the effect size (`Cramers_v`

, `phi`

(possibly with
the suffix `_adjusted`

), `Cohens_w`

, `Fei`

) and its CIs (`CI_low`

and
`CI_high`

).

Unless stated otherwise, confidence (compatibility) intervals (CIs) are
estimated using the noncentrality parameter method (also called the "pivot
method"). This method finds the noncentrality parameter ("*ncp*") of a
noncentral *t*, *F*, or *χ^2* distribution that places the observed
*t*, *F*, or *χ^2* test statistic at the desired probability point of
the distribution. For example, if the observed *t* statistic is 2.0, with 50
degrees of freedom, for which cumulative noncentral *t* distribution is *t* =
2.0 the .025 quantile (answer: the noncentral *t* distribution with *ncp* =
.04)? After estimating these confidence bounds on the *ncp*, they are
converted into the effect size metric to obtain a confidence interval for the
effect size (Steiger, 2004).

For additional details on estimation and troubleshooting, see effectsize_CIs.

"Confidence intervals on measures of effect size convey all the information
in a hypothesis test, and more." (Steiger, 2004). Confidence (compatibility)
intervals and p values are complementary summaries of parameter uncertainty
given the observed data. A dichotomous hypothesis test could be performed
with either a CI or a p value. The 100 (1 - *α*)% confidence
interval contains all of the parameter values for which *p* > *α*
for the current data and model. For example, a 95% confidence interval
contains all of the values for which p > .05.

Note that a confidence interval including 0 *does not* indicate that the null
(no effect) is true. Rather, it suggests that the observed data together with
the model and its assumptions combined do not provided clear evidence against
a parameter value of 0 (same as with any other value in the interval), with
the level of this evidence defined by the chosen *α* level (Rafi &
Greenland, 2020; Schweder & Hjort, 2016; Xie & Singh, 2013). To infer no
effect, additional judgments about what parameter values are "close enough"
to 0 to be negligible are needed ("equivalence testing"; Bauer & Kiesser,
1996).

Cohen, J. (1988). Statistical power analysis for the behavioral sciences (2nd Ed.). New York: Routledge.

Johnston, J. E., Berry, K. J., & Mielke Jr, P. W. (2006). Measures of effect size for chi-squared and likelihood-ratio goodness-of-fit tests. Perceptual and motor skills, 103(2), 412-414.

Rosenberg, M. S. (2010). A generalized formula for converting chi-square tests to effect sizes for meta-analysis. PloS one, 5(4), e10059.

`chisq_to_phi()`

for details regarding estimation and CIs.

Other effect sizes for contingency table:
`cohens_g()`

,
`oddsratio()`

## 2-by-2 tables ## ------------- data("RCT_table") RCT_table # note groups are COLUMNS phi(RCT_table) pearsons_c(RCT_table) ## Larger tables ## ------------- data("Music_preferences") Music_preferences cramers_v(Music_preferences) cohens_w(Music_preferences) pearsons_c(Music_preferences) ## Goodness of fit ## --------------- data("Smoking_FASD") Smoking_FASD fei(Smoking_FASD) cohens_w(Smoking_FASD) pearsons_c(Smoking_FASD) # Use custom expected values: fei(Smoking_FASD, p = c(0.015, 0.010, 0.975)) cohens_w(Smoking_FASD, p = c(0.015, 0.010, 0.975)) pearsons_c(Smoking_FASD, p = c(0.015, 0.010, 0.975))

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.