Effacer les filtres
Effacer les filtres

Change random values in the matrix of 234*10000

1 vue (au cours des 30 derniers jours)
Harsh Rob
Harsh Rob le 7 Fév 2020
Commenté : Harsh Rob le 7 Fév 2020
I have a matrix of 10*10 (in this example, actually the matrix is 234*10000) and I have to change the values at random locations.
I tried using the randperm function but it is able to change the values only in the beginning locations. Could someone advise on this please
X= rand(10)
shi=randperm(10,3); %For 10000 simulations and limiting the jump to go only upto 1673
Initial_X = X(shi);
X(shi) = randperm(5,length(shi)); %Change the values at these values of 'i' which is derived from the randperm function above
Final_X = X(shi);

Réponse acceptée

KSSV
KSSV le 7 Fév 2020
You should follow like this:
X= rand(10)
shi=randperm(numel(X),3); %For 10000 simulations and limiting the jump to go only upto 1673
Initial_X = X;
X(shi) = rand(size(shi)); %Change the values at these values of 'i' which is derived from the randperm function above
Final_X = X;
  3 commentaires
Bhaskar R
Bhaskar R le 7 Fév 2020
X(shi) = randi([your big number limit], size(shi));
Harsh Rob
Harsh Rob le 7 Fév 2020
Thanks KSSV and Bhaskar. It works for me now.

Connectez-vous pour commenter.

Plus de réponses (1)

Bhaskar R
Bhaskar R le 7 Fév 2020
X= rand(10); % total locations, 10*10 = 100;
loc = randperm(numel(X), 1); % out of 100 locations i pick one random location choosen
X(loc) = rand(1); % assigning random value to randomly picked location
  1 commentaire
Harsh Rob
Harsh Rob le 7 Fév 2020
No it does not work. I used the same logic. So basically, this new random number introduced should be a higher number so that I can differentiate. Also, I have to make this changes at say 10 random places in the 10*10 matrix with a bit higher values.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Language Fundamentals dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by