How to fill matrix with random numbers in R?

you can do something like:

matrix(rexp(200), 10)

And of course use what ever distribution you want.


?matrix will tell you lots! and rexp is the function to generate a random exponential distribution.

mat <- matrix(data = rexp(200, rate = 10), nrow = 10, ncol = 20)

Use the matrix function:

matrix(rexp(200, rate=.1), ncol=20)

ETA: If you want to do it without repeating the 200, you can define a function to do so:

fill.matrix = function(expr, nrow=1, ncol=1) {
    matrix(eval(expr, envir=list(x=nrow*ncol)), nrow=nrow, ncol=ncol)
}

fill.matrix(rexp(x, rate=.1), nrow=10, ncol=20)

The x thus becomes the dummy variable you're talking about. Is that what you're looking for?

Tags:

Matrix

R