Skip to contents

This function will generate n random points from an Inverse Gaussian distribution with a user provided, .mean, .shape, .dispersionThe function returns a tibble with the simulation number column the x column which corresponds to the n randomly generated points.

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_inverse_normal(
  .n = 50,
  .mean = 1,
  .shape = 1,
  .dispersion = 1/.shape,
  .num_sims = 1
)

Arguments

.n

The number of randomly generated points you want.

.mean

Must be strictly positive.

.shape

Must be strictly positive.

.dispersion

An alternative way to specify the .shape.

.num_sims

The number of randomly generated simulations you want.

Value

A tibble of randomly generated data.

Details

This function uses the underlying actuar::rinvgauss(). For more information please see rinvgauss()

Author

Steven P. Sanderson II, MPH

Examples

tidy_inverse_normal()
#> # A tibble: 50 × 7
#>    sim_number     x     y      dx      dy     p     q
#>    <fct>      <int> <dbl>   <dbl>   <dbl> <dbl> <dbl>
#>  1 1              1 0.916 -0.541  0.00141 0.632 0.916
#>  2 1              2 1.03  -0.436  0.00557 0.681 1.03 
#>  3 1              3 2.74  -0.331  0.0182  0.941 2.74 
#>  4 1              4 1.94  -0.225  0.0497  0.878 1.94 
#>  5 1              5 0.837 -0.120  0.113   0.594 0.837
#>  6 1              6 0.921 -0.0148 0.219   0.635 0.921
#>  7 1              7 0.569  0.0905 0.361   0.422 0.569
#>  8 1              8 0.456  0.196  0.516   0.325 0.456
#>  9 1              9 0.678  0.301  0.648   0.501 0.678
#> 10 1             10 1.83   0.406  0.731   0.865 1.83 
#> # … with 40 more rows