A=[1,0,5,3,0;2,0,6,0,9;0,0,5,3,1];
idx = randperm(size(A,1),1);
[~,col,val]=find(A(idx,:));
changed=val+0.5*rand;
I want to make a new_A according to changed value. if
idx=2, changed=[2.11,6.11,9.11];
new_A should be
new_A=[1,0,5,3,0;2.11,0,6.11,0,9.11;0,0,5,3,1];

 Akzeptierte Antwort

Guillaume
Guillaume am 2 Apr. 2019

0 Stimmen

Note that
idx = randi(size(A, 1));
would make more sense than randperm with just one element output. Anyway,
randomrow = randi(size(A, 1)); %better name than idx as well.
A(randomrow, :) = A(randomrow, :) + 0.5 * rand * (A(randomrow, :) ~= 0)

Weitere Antworten (0)

Kategorien

Mehr zu Function Creation finden Sie in Hilfe-Center und File Exchange

Gefragt:

NA
am 2 Apr. 2019

Beantwortet:

am 2 Apr. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by