Basta usar a funcao RUNIF do R:
> system.time({x=runif(50000000)<0.5}) user system elapsed 1.169 0.143 1.308 > mean(x) [1] 0.5001185 On Tue, 11 Sep 2012 17:34:51 -0300, Jose F. de Carvalho wrote > Caro Gauss: > > Rodei o seguinte programa no SAS, em minha máquina mais fraca (ASUS EEE PC Seashell, com 1Gb de memória, usando SAS 9.3); como se vê, são 50 milhões de gerações de uma Bernouilli, com p=0.5). O tempo de CPU foi 30.43 segundos (e o de "sala" 1:24.28 [um minuto e vinte e quatro segundos). Não estou comparando softwares, pois não sei se as máquinas são comparáveis. Tão diferentes assim não são. Achei 18 minutos um tempo absurdamente alto para um job tão pequeno. Qual era o ponto de seu e-mail? > > data t; > p=0.5; > do i=1 to 5E+07; > x = RAND('BERNOULLI',p); > output; > end; > run; > > Um abraço. > > Zé Carvalho > > On 09/11/2012 03:07 PM, Gauss Cordeiro wrote: Corrigindo: Hedibert Freitas Lopes, Ph.D. Associate Professor Department of Statistical Methods Institute of Mathematics Federal University of Rio de Janeiro (UFRJ) |