Find a random position in a vector where the value is zero
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Murali Krishna AG
am 25 Jul. 2021
Bearbeitet: Scott MacKenzie
am 25 Jul. 2021
I have a vector with mix of complex numbers and zeros. I have to find a random position in the vector where the value is zero.
For example, in the given A matrix I should get any of the underlined value's vector position
A = [a b c 0 x 0 0 0 r 0 0 0 y q 0 p 0];
0 Kommentare
Akzeptierte Antwort
Scott MacKenzie
am 25 Jul. 2021
Bearbeitet: Scott MacKenzie
am 25 Jul. 2021
% test data (includes zeros and imaginary numbers)
A = [1i 4/1j 7 0 99 0 0 0 8*1j 0 0 0 8 9 0 -7 0];
% find indices of zeros in A
zeroIdx = find(A==0);
% pick one of the zeros at random (display index)
randomIdx = zeroIdx(randi(length(zeroIdx),1))
0 Kommentare
Weitere Antworten (1)
Chunru
am 25 Jul. 2021
% Generate some randome data with zeros
n = 10;
a = randn(1, n);
k = randperm(n, round(n/2));
a(k) = 0;
a
% find zeros
idx = find(a==0);
% randomly pick from idx
pick = randperm(length(idx), 1)
a(idx(pick))
0 Kommentare
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!