A tidier version of prop.test() for equal or given proportions.

## Usage

```
prop_test(
x,
formula,
response = NULL,
explanatory = NULL,
p = NULL,
order = NULL,
alternative = "two-sided",
conf_int = TRUE,
conf_level = 0.95,
success = NULL,
correct = NULL,
z = FALSE,
...
)
```

## Arguments

- x
A data frame that can be coerced into a tibble.

- formula
A formula with the response variable on the left and the explanatory on the right. Alternatively, a

`response`

and`explanatory`

argument can be supplied.- response
The variable name in

`x`

that will serve as the response. This is an alternative to using the`formula`

argument.- explanatory
The variable name in

`x`

that will serve as the explanatory variable. This is an alternative to using the formula argument.- p
A numeric vector giving the hypothesized null proportion of success for each group.

- order
A string vector specifying the order in which the proportions should be subtracted, where

`order = c("first", "second")`

means`"first" - "second"`

. Ignored for one-sample tests, and optional for two sample tests.- alternative
Character string giving the direction of the alternative hypothesis. Options are

`"two-sided"`

(default),`"greater"`

, or`"less"`

. Only used when testing the null that a single proportion equals a given value, or that two proportions are equal; ignored otherwise.- conf_int
A logical value for whether to include the confidence interval or not.

`TRUE`

by default.- conf_level
A numeric value between 0 and 1. Default value is 0.95.

- success
The level of

`response`

that will be considered a success, as a string. Only used when testing the null that a single proportion equals a given value, or that two proportions are equal; ignored otherwise.- correct
A logical indicating whether Yates' continuity correction should be applied where possible. If

`z = TRUE`

, the`correct`

argument will be overwritten as`FALSE`

. Otherwise defaults to`correct = TRUE`

.- z
A logical value for whether to report the statistic as a standard normal deviate or a Pearson's chi-square statistic. \(z^2\) is distributed chi-square with 1 degree of freedom, though note that the user will likely need to turn off Yates' continuity correction by setting

`correct = FALSE`

to see this connection.- ...
Additional arguments for prop.test().

## Details

When testing with an explanatory variable with more than two levels, the
`order`

argument as used in the package is no longer well-defined. The function
will thus raise a warning and ignore the value if supplied a non-NULL `order`

argument.

The columns present in the output depend on the output of both `prop.test()`

and `broom::glance.htest()`

. See the latter's documentation for column
definitions; columns have been renamed with the following mapping:

`chisq_df`

=`parameter`

`p_value`

=`p.value`

`lower_ci`

=`conf.low`

`upper_ci`

=`conf.high`

## See also

Other wrapper functions:
`chisq_stat()`

,
`chisq_test()`

,
`observe()`

,
`t_stat()`

,
`t_test()`

## Examples

```
# two-sample proportion test for difference in proportions of
# college completion by respondent sex
prop_test(gss,
college ~ sex,
order = c("female", "male"))
#> # A tibble: 1 × 6
#> statistic chisq_df p_value alternative lower_ci upper_ci
#> <dbl> <dbl> <dbl> <chr> <dbl> <dbl>
#> 1 0.0000204 1 0.996 two.sided -0.0918 0.0834
# one-sample proportion test for hypothesized null
# proportion of college completion of .2
prop_test(gss,
college ~ NULL,
p = .2)
#> # A tibble: 1 × 4
#> statistic chisq_df p_value alternative
#> <dbl> <int> <dbl> <chr>
#> 1 636. 1 2.98e-140 two.sided
# report as a z-statistic rather than chi-square
# and specify the success level of the response
prop_test(gss,
college ~ NULL,
success = "degree",
p = .2,
z = TRUE)
#> # A tibble: 1 × 3
#> statistic p_value alternative
#> <dbl> <dbl> <chr>
#> 1 8.27 1.30e-16 two.sided
```