Generate a random vector elements that sum up to one ?

7 visualizaciones (últimos 30 días)
Rahim Rahim
Rahim Rahim el 29 de Dic. de 2022
Respondida: Image Analyst el 29 de Dic. de 2022
Let us consider that we have a vector V.
Where V(1,6): the vector contains 6 columns (cases).
How can I set up a random vector that will sum up to 1. I mean that: sum(V(1,:)) == 1 ).
where all the elements should be beweent 0 and 1. Upperbounder =1 and lowbounder =1.

Respuestas (1)

Image Analyst
Image Analyst el 29 de Dic. de 2022
Try this:
V = rand(1, 6);
V = V / sum(V) % Make it sum to 1 by dividing by the sum.
V = 1×6
0.1426 0.2113 0.2330 0.0874 0.2157 0.1100
theSum = sum(V)
theSum = 1
but many people use this:
which is supposedly better for some reason.

Categorías

Más información sobre Random Number Generation en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by