Is it possible to use rand in a matrix and include a range? I know it is possible with a vector, but I wanted to see if it was possible in a matrix. Thank you!

 Risposta accettata

KALYAN ACHARJYA
KALYAN ACHARJYA il 15 Ott 2019
Modificato: KALYAN ACHARJYA il 15 Ott 2019

0 voti

result=-min_value + (max_value+min_value)*rand(m,n);
Example:
%Let say range -0.6 to 0.8 and matrix size 5x4
result=-0.6 + (0.8+0.6)*rand(5,4)
Result:
result =
0.1382 -0.0979 0.2944 0.0736
-0.4558 0.2558 -0.1577 -0.5351
0.0320 0.5944 -0.4910 0.1707
-0.1773 0.5954 -0.5836 -0.1201
0.2625 0.1651 0.2922 -0.5717

2 Commenti

I would typically write
result = min_value + (max_value - min_value) * rand(m,n);
In my formula, greater rand() value corresponds to greater result. In the formula KAYLAN posted, greater rand() value corresponds to lower result. Mathematically they are the same, but I think the form I presented is easier to understand.
KALYAN ACHARJYA
KALYAN ACHARJYA il 15 Ott 2019
Exactly sir, Thanks

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by