how to generate a random matrix with specific condition ?

2 views (last 30 days)
i want to generate a random matrix in every time i want a specific row will be the same
if i have Matrix
A = [0 -1 0 0 0
1 1 -1 1 1
0 1 0 0 0
0 1 0 0 0 ]
i want to generate a random matrix and in every time the row and column which does have the ones in there entry i want to still appear in every time
  • generate a completely random matrix, and then overwrite that row and column
  4 Comments
John D'Errico
John D'Errico on 9 Apr 2016
So just generate a completely random matrix, and then overwrite that row and column. WTP?

Sign in to comment.

Answers (1)

Jan
Jan on 9 Apr 2016
A = [0 -1 0 0 0; ...
1 1 -1 1 1; ...
0 1 0 0 0; ...
0 1 0 0 0 ];
X = rand(size(A)); % Or randi?
index = (A(:) ~= 0);
X(index) = A(index);

Categories

Find more on Random Number Generation 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!