# Generating Multivariate Uniform Distribution in R

Let $d$ a positive integer How to generate a sample of $n$ random variables with a multivariate uniform distribution on the cube $[a,b]^d$ in R?

I don't know what to do. I know that I need a covariance matrix for the random vectors that I will generate...

• Why do you think you need a covariance matrix? – kjetil b halvorsen Oct 17 '17 at 15:10
• If your real task is about discovering the covariance matrix, by using trials, then you may be interested in a direct analytical solution: the variance-covariance matrix for a uniform variable, in Euclidean space, on the cube $[a,b]^d$ is $$cov(x_i,x_j) = \frac{1}{12}(a-b)^2 \cdot \mathbf{I}$$ – Martijn Weterings Oct 18 '17 at 16:56

It depends a little bit on the terminology, but usually multivariate uniform refers to a distribution where every point in $[a,b]^d$ is equally likely. Hence, the dimensions are independent, and you can draw uniformly between $[a,b]$ d times individually to get a sample from the multivariate uniform.
samps <- replicate(n, runif(d,a,b)) # draw samples