Home > database >  random samples in R
random samples in R

Time:10-31

I'm trying to generate 1000 random samples of length 100 from a normal distribution in R. I feel this should be very straight forward, but I can't get it.

for (i in 1:1000) {
  x[i]=rnorm(100, mean=1, sd=1)
}

for (i in 1:1000) {
  y[i]=rnorm(100, mean=1, sd=1)
}

But this code tells me that object x is not found (same thing for y)

Any ideas how to fix it? In the end, I'd like to have two matrices, x and y, where there each column is a random vector

Thanks

CodePudding user response:

Create a vector of random numbers with as many elements as in the matrix (number of rows x number of columns). Use that to construct the matrix, specifying the number of rows (or columns); the matrix() function will infer the number of columns from the length of the vector.

> nr = 5; nc = 4; matrix(rnorm(nr * nc, mean = 1), nrow = nr)
           [,1]      [,2]      [,3]        [,4]
[1,]  0.4335546 0.1604642 0.9182186  0.90655887
[2,]  0.5364028 0.9228126 1.2342502 -1.14907299
[3,]  2.3253380 0.9264194 4.4438906 -0.12498029
[4,]  0.4099558 0.7013819 2.3345348  0.03681959
[5,] -0.6206456 2.3659304 1.8343477  0.61415144
  • Related