Randi except one variable

18 views (last 30 days)
Alice Amitrano
Alice Amitrano on 18 Mar 2019
Commented: Walter Roberson on 18 Jun 2021
My randi matrix can have random values except one value, how do I generate it?
  1 Comment
Kevin Phung
Kevin Phung on 18 Mar 2019
which value? are you talking about a particular index? and what would that value be?

Sign in to comment.

Answers (2)

Kevin Phung
Kevin Phung on 18 Mar 2019
I would suggest generating a mxn randi matrix, and just changing the one index to whatever value you wanted it to be.

Walter Roberson
Walter Roberson on 18 Mar 2019
Guessing that you mean that you want to randi() over a range of integer values but that there is a particular value that should never be generated, then:
valid_vals = setdiff(low_value:high_value, values_to_exclude);
result = valid_vals( randi(length(valid_vals), number_of_rows, number_of_columns) );
  2 Comments
Akana Juliet
Akana Juliet on 18 Jun 2021
@Walter Roberson Hi! for "values_to_exclude" how do you include multiple integers?
Walter Roberson
Walter Roberson on 18 Jun 2021
values_to_exclude = [3, 8, -5:-2]
just create a list.

Sign in to comment.

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!