Skip to contents

This function will generate n random points from a weibull distribution with a user provided, .shape, .scale, .rate, 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_inverse_weibull(
  .n = 50,
  .shape = 1,
  .rate = 1,
  .scale = 1/.rate,
  .num_sims = 1
)

Arguments

.n

The number of randomly generated points you want.

.shape

Must be strictly positive.

.rate

An alternative way to specify the .scale.

.scale

Must be strictly positive.

.num_sims

The number of randomly generated simulations you want.

Value

A tibble of randomly generated data.

Details

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

Author

Steven P. Sanderson II, MPH

Examples

tidy_inverse_weibull()
#> # A tibble: 50 × 7
#>    sim_number     x     y     dx       dy      p     q
#>    <fct>      <int> <dbl>  <dbl>    <dbl>  <dbl> <dbl>
#>  1 1              1 1.20  -3.54  0.000886 0.436  1.20 
#>  2 1              2 2.83  -2.99  0.00322  0.702  2.83 
#>  3 1              3 8.86  -2.44  0.00980  0.893  8.86 
#>  4 1              4 0.306 -1.89  0.0248   0.0382 0.306
#>  5 1              5 7.52  -1.34  0.0524   0.876  7.52 
#>  6 1              6 0.471 -0.795 0.0928   0.120  0.471
#>  7 1              7 1.15  -0.247 0.139    0.418  1.15 
#>  8 1              8 4.99   0.301 0.175    0.818  4.99 
#>  9 1              9 9.44   0.849 0.189    0.900  9.44 
#> 10 1             10 4.61   1.40  0.177    0.805  4.61 
#> # … with 40 more rows