what should I do with rand() so that the sum of each row should not be greater than one??..

1 visualizzazione (ultimi 30 giorni)
I generated the random numbers from 0 to 1 as follows:
Population = rand(20,3)
now I wants that the sum of each individual row should not be greater than zero
s = sum(Population,2)
how should I restrict each row, generated with rand(), so that the its sum should be b/w 0 and 1??...
The values in each row should come as if I add them up they should not exceed one
plZ answer it.....

Risposte (2)

Walter Roberson
Walter Roberson il 18 Lug 2012
  3 Commenti
sani ars
sani ars il 21 Lug 2012
Modificato: sani ars il 21 Lug 2012
I have tried this one i.e. randfixedsum(20,3,1,0,1)
but this is not giving me sum==1 for each individual row..
Although, the 3rd parameter of the function is set to 1 but it is not giving me the the sum exactly equal to 1 for each individual row..
Plz help me out....

Accedi per commentare.


Daniel Shub
Daniel Shub il 18 Lug 2012
What about
N = 3;
Population = rand(20,N)/N
  2 Commenti
Image Analyst
Image Analyst il 21 Lug 2012
Why do you say that? Just look at
theRowSums = sum(Population, 2)
and you'll see that none of the 20 rows has a sum greater than 1.
But you know, we really don't know what you want because you've said three different things!:
  1. "sum of each individual row should not be greater than zero"
  2. "sum should be b/w 0 and 1"
  3. "the sum exactly equal to 1 for each individual row."
There are three totally different things. Please, which one is it? Pick one and stick with it - don't give us a fourth definition.

Accedi per commentare.

Categorie

Scopri di più su Get Started with Statistics and Machine Learning Toolbox in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by