How i will choose a random element of a matrix

45 Ansichten (letzte 30 Tage)
Giannakis Stoukas
Giannakis Stoukas am 24 Mär. 2015
Kommentiert: Walter Roberson am 21 Mai 2022
I have a matrix A,and i want to choose randomly an element from the matrix.How i will do that?

Akzeptierte Antwort

per isakson
per isakson am 24 Mär. 2015
One way
A = rand(3,4)
A( randi([1,size(A,1)],1), randi([1,size(A,2)],1) )
  2 Kommentare
Assen Beshr
Assen Beshr am 21 Mai 2022
Bearbeitet: Assen Beshr am 21 Mai 2022
per isakson: perfect . I have one question related to this question. the question is How I choose random value npop X n matrix if npop =5 and n=2; from column matrix L=[2;4;5;7;8;9;12;25;32;33]
for example [4 25
2 7
33 12
32 5
4 9];
Walter Roberson
Walter Roberson am 21 Mai 2022
L(randi(numel(L), npop, n))

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Guillaume
Guillaume am 24 Mär. 2015
It may be (insignificantly) faster to use linear indexing:
A(randi(numel(A)));
It's more succinct anyway, and works whatever the number of dimensions of the array.

Kategorien

Mehr zu Operating on Diagonal 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!

Translated by