Selecting randomly from matrix

I have a matrix B =
2 5 6
8 9 10
56 89 10
1 0 3
8 1 3
in this i want to select a 2x2 matrix randomly ,please tell how to select

2 Kommentare

Walter Roberson
Walter Roberson am 25 Jul. 2012
A 2x2 submatrix of adjacent values?
FIR
FIR am 25 Jul. 2012
Yes walter

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Andrei Bobrov
Andrei Bobrov am 25 Jul. 2012
Bearbeitet: Andrei Bobrov am 25 Jul. 2012

1 Stimme

adjacent values
B(randi(size(B,1)-1)+(0:1),randi(size(B,2)-1)+(0:1));
not adjacent values
ii = randperm(size(B,1));
jj = randperm(size(B,2));
B(sort(ii(1:2)),sort(jj(1:2)))
Thomas
Thomas am 25 Jul. 2012

0 Stimmen

perhaps something like this..
q=[ 2 5 6
8 9 10
56 89 10
1 0 3
8 1 3]
row=randi(4); %select start row
col=randi(2); %select start colums
out=q(row:row+1,col:col+1)

Gefragt:

FIR
am 25 Jul. 2012

Community Treasure Hunt

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

Start Hunting!

Translated by