Skip to contents

This function will generate n random points from a hypergeometric distribution with a user provided, m,nn, and k, and number of random simulations to be produced. The function returns a tibble with the simulation number column the x column which corresponds to the n randomly generated points, the d_, p_ and q_ data points as well.

The data is returned un-grouped.

The columns that are output are:

  • sim_number The current simulation number.

  • x The current value of n for the current simulation.

  • y The randomly generated data point.

  • dx The x value from the stats::density() function.

  • dy The y value from the stats::density() function.

  • p The values from the resulting p_ function of the distribution family.

  • q The values from the resulting q_ function of the distribution family.

Usage

tidy_hypergeometric(
  .n = 50,
  .m = 0,
  .nn = 0,
  .k = 0,
  .num_sims = 1,
  .return_tibble = TRUE
)

Arguments

.n

The number of randomly generated points you want.

.m

The number of white balls in the urn

.nn

The number of black balls in the urn

.k

The number of balls drawn fro the urn.

.num_sims

The number of randomly generated simulations you want.

.return_tibble

A logical value indicating whether to return the result as a tibble. Default is TRUE.

Value

A tibble of randomly generated data.

Details

This function uses the underlying stats::rhyper(), and its underlying p, d, and q functions. For more information please see stats::rhyper()

Author

Steven P. Sanderson II, MPH

Examples

tidy_hypergeometric()
#> # A tibble: 50 × 7
#>    sim_number     x     y     dx     dy     p     q
#>    <fct>      <int> <int>  <dbl>  <dbl> <dbl> <dbl>
#>  1 1              1     0 -1.23  0.0109     1     0
#>  2 1              2     0 -1.18  0.0156     1     0
#>  3 1              3     0 -1.13  0.0220     1     0
#>  4 1              4     0 -1.08  0.0305     1     0
#>  5 1              5     0 -1.03  0.0418     1     0
#>  6 1              6     0 -0.983 0.0564     1     0
#>  7 1              7     0 -0.932 0.0749     1     0
#>  8 1              8     0 -0.882 0.0981     1     0
#>  9 1              9     0 -0.832 0.126      1     0
#> 10 1             10     0 -0.781 0.161      1     0
#> # ℹ 40 more rows