vendredi 27 janvier 2023

Difference drawing random numbers from distributions R [migrated]

I am comparing these two forms of drawing random numbers from a beta and a Gaussian distribution. What are their differences? Why are they different?

The first way (_1) simulates from a Uniform(0,1) and then applies the inverse CDF of the Beta (Normal) distribution on those uniform draws to get draws from the Beta (Normal) distribution.

While the second way (_2) uses the default function to generate random numbers from the distribution.

Beta Distribution

set.seed(1)
beta_1 <- qbeta(runif(1000,0,1), 2, 5)
set.seed(1)
beta_2 <- rbeta(1000, 2,5)

> summary(beta_1); summary(beta_2)
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
0.009481 0.164551 0.257283 0.286655 0.387597 0.895144 
    Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
0.006497 0.158083 0.261649 0.284843 0.396099 0.841760  

Here every number is different.

Normal distribution

set.seed(1)
norm_1 <- qnorm(runif(1000, 0,1), 0, 0.1)
set.seed(1)
norm_2 <- rnorm(1000, 0, 0.1)

> summary(norm_1); summary(norm_2)
      Min.    1st Qu.     Median       Mean    3rd Qu.       Max. 
-0.3008048 -0.0649125 -0.0041975  0.0009382  0.0664868  0.3810274 
     Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
-0.300805 -0.069737 -0.003532 -0.001165  0.068843  0.381028

Here the numbers are almost the same except in the mean and median

Shouldn't all be equal? Because I am generating random numbers from distributions with the same parameters




Aucun commentaire:

Enregistrer un commentaire