Skip to contents

This function will generate n random points from a zero truncated binomial distribution with a user provided, .size, .prob, 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_zero_truncated_binomial(
  .n = 50,
  .size = 1,
  .prob = 1,
  .num_sims = 1,
  .return_tibble = TRUE
)

Arguments

.n

The number of randomly generated points you want.

.size

Number of trials, zero or more.

.prob

Probability of success on each trial 0 <= prob <= 1.

.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 actuar::rztbinom(), and its underlying p, d, and q functions. For more information please see actuar::rztbinom()

Author

Steven P. Sanderson II, MPH

Examples

tidy_zero_truncated_binomial()
#> # A tibble: 50 × 7
#>    sim_number     x     y      dx     dy     p     q
#>    <fct>      <int> <int>   <dbl>  <dbl> <dbl> <dbl>
#>  1 1              1     1 -0.235  0.0109     1     1
#>  2 1              2     1 -0.184  0.0156     1     1
#>  3 1              3     1 -0.134  0.0220     1     1
#>  4 1              4     1 -0.0835 0.0305     1     1
#>  5 1              5     1 -0.0331 0.0418     1     1
#>  6 1              6     1  0.0173 0.0564     1     1
#>  7 1              7     1  0.0677 0.0749     1     1
#>  8 1              8     1  0.118  0.0981     1     1
#>  9 1              9     1  0.168  0.126      1     1
#> 10 1             10     1  0.219  0.161      1     1
#> # ℹ 40 more rows