Filter löschen
Filter löschen

I would like some help with coverting a matrix that is generated randomly to a binary matrix

1 Ansicht (letzte 30 Tage)
This is a distance matrix which generates random number for every iteration. Is it possible to generate a binary matrix which has ones in place of the lowest 2 values in each row and zeros everywhere else? Can i please get some help with that?

Akzeptierte Antwort

Chunru
Chunru am 22 Aug. 2022
d = rand(4,4) % random data
d = 4×4
0.3227 0.2997 0.6497 0.7723 0.2227 0.7284 0.6703 0.8356 0.3157 0.4773 0.7145 0.0510 0.4854 0.4051 0.6248 0.5357
y = zeros(size(d));
for i=1:size(d, 1)
[~, idx] = sort(d(i, :)); % sort in asencing order
y(i, idx(1:2)) = 1;
end
y
y = 4×4
1 1 0 0 1 0 1 0 1 0 0 1 1 1 0 0

Weitere Antworten (0)

Kategorien

Mehr zu Random Number Generation 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!

Translated by