RE: simple program: help, please!
- To: mathgroup at smc.vnet.net
- Subject: [mg34485] RE: [mg34462] simple program: help, please!
- From: "tgarza01 at prodigy.net.mx" <tgarza01 at prodigy.net.mx>
- Date: Thu, 23 May 2002 03:32:31 -0400 (EDT)
- Reply-to: tgarza01 at prodigy.net.mx
- Sender: owner-wri-mathgroup at wolfram.com
You have a funny-looking problem, but the solution is quite simple. Load the Statistics` package: In[1]:= <<Statistics` Then define the distribution you want to sample from (in this case, the exponential distribution with parameter = 1). In[2]:= dexp=ExponentialDistribution[1]; The "program" you want is as simple as this (one of many possibilities): In[3]:= result={};Do[vo=Sort[RandomArray[dexp,50]]; AppendTo[result,{i,Plus@@Take[vo,30]/i,vo}],{i,1,500}] You now evaluate result and get the answer you are looking for in 2.5 seconds: 500 rows, and in each of them the index for the i-th iteration; the quotient s/i, and the vector vo. In[4]:= result (output omitted). Tomas Garza Mexico City Original Message: ----------------- From: _MarioLatens mario.lat at libero.it To: mathgroup at smc.vnet.net Subject: [mg34485] [mg34462] simple program: help, please! I have to do something like this: I don't know mathematica language but I think it can do that... for i=1 to 500 ( 1) get 50 nubers random from 1 to 100. (to be onest I need exponential distribution) and put it in a vector 'v' 2) order this vector ('v') : vo=order_vector (v) 3) take the 30th elemente : e=vo[30] 4) calculate sum of first 30 elements of vo : for(j=1 to 30) s=s+vo[j] 5) calculate d=s/i; 6) print d, print the vector vo. ) I don't know mathematica very well and I have to manipulate data in a little time so I ask help you: how can I write this programs? Thank you in advance, Mario. P.S. where can I find nice manual on internet for programming whith mathematica? -------------------------------------------------------------------- mail2web - Check your email from the web at http://mail2web.com/ .