Clear Filters
Clear Filters

how can I fill a matrix with randomly -0.01 and 0.01

1 view (last 30 days)
I want to fill a matrix with only two diffrent numbers e.g. 0.01 and -0.01.

Accepted Answer

Stephen23
Stephen23 on 23 Mar 2017
Edited: Stephen23 on 23 Mar 2017
>> V = [0.01,-0.01];
>> V(randi(numel(V),5,5))
ans =
-0.010000 0.010000 -0.010000 0.010000 0.010000
-0.010000 0.010000 0.010000 0.010000 -0.010000
-0.010000 -0.010000 0.010000 0.010000 -0.010000
0.010000 -0.010000 -0.010000 -0.010000 -0.010000
-0.010000 0.010000 -0.010000 0.010000 -0.010000
Although you could calculate the values from randi, this method using indexing has the advantage that the values are not calculated but are exactly those values that you define in V.
  1 Comment
Simon Blum
Simon Blum on 23 Mar 2017
Thanks Stephen. I tried it the following way, but obviously your solution is much better:
V = (2* randi(2,[5,5]) - 3)/100;

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!