Selecting randomly from matrix

1 view (last 30 days)
FIR
FIR on 25 Jul 2012
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 Comments
Walter Roberson
Walter Roberson on 25 Jul 2012
A 2x2 submatrix of adjacent values?
FIR
FIR on 25 Jul 2012
Yes walter

Sign in to comment.

Answers (2)

Andrei Bobrov
Andrei Bobrov on 25 Jul 2012
Edited: Andrei Bobrov on 25 Jul 2012
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 on 25 Jul 2012
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)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!