expand.grid(i=rexp(5,rate=0.1))
Cela crée juste un col, mais y a-t-il un moyen de le multiplier facilement en 5 cols? Je veux parler de la façon de faire les choses comme Rand('exp', 0.1, 10,20)
(créer une matrice avec des nombres aléatoires à distribution exponentielle avec une moyenne de 0,1 de taille 10x20), comment
Utilisez la fonction matrix :
matrix(rexp(200, rate=.1), ncol=20)
ETA: Si vous voulez le faire sans répéter le 200, vous pouvez définir une fonction pour le faire:
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)
x
devient ainsi la variable muette dont vous parlez. Est-ce ce que vous cherchez?
vous pouvez faire quelque chose comme:
matrix(rexp(200), 10)
Et bien sûr, utilisez la distribution de votre choix.
?matrix
vous en dit beaucoup! et rexp
est la fonction permettant de générer une distribution exponentielle aléatoire.
mat <- matrix(data = rexp(200, rate = 10), nrow = 10, ncol = 20)
Utilisez ceci:
matris=matrix(rnorm(10),5,20)
Voici une solution simple:
replicate(rexp(10),20)