Hello,
I have a cell(matrix) of size 100*100.I need to scan each column and choose 4 consecutive random cells( (1*1)*4) for assigning values.Can anyone please help me with this?
Thanks in advance

2 commentaires

madhan ravi
madhan ravi le 22 Juil 2020
A short example?
KK14
KK14 le 22 Juil 2020
I have a 100*100matrix. Suppose I take x as my random value & column say 'y'.So my selection among the 100 elements in the column should be (x:x+4, y)
ex: if x = 7, y =4
selection = (7:10, 4)

Connectez-vous pour commenter.

 Réponse acceptée

KSSV
KSSV le 22 Juil 2020

0 votes

You got 100 columns.....you can pick any one element/ position out of it randomly using randperm.
% loop for each column
for i = 1:100
% pick element randomly
p = randperm(100,1) ;
end

3 commentaires

KK14
KK14 le 22 Juil 2020
This would give me just 1 cell,but I need 4
KSSV
KSSV le 22 Juil 2020
Modifié(e) : KSSV le 22 Juil 2020
You said you want continuously right? Then simply taken next four from them.
% loop for each column
for i = 1:100
% pick element randomly
p = randperm(100,1) ;
if p > 96
p = 96 ;
end
idx = p:p+4 ;
end
KK14
KK14 le 22 Juil 2020
Thankyou for the answer.Idea works just fine.

Connectez-vous pour commenter.

Plus de réponses (1)

Bruno Luong
Bruno Luong le 22 Juil 2020

0 votes

A = zeros(100,100);
something = 1;
for c = 1:100
r = randi(97) + (0:3);
A(r,c) = something;
end

3 commentaires

KK14
KK14 le 22 Juil 2020
In my case 97 wouldn't work.I do not always have 100 rows(question was generally asked).It would throw an error if I put randi (A(end))+(0:3) (A here is my array,say).
Bruno Luong
Bruno Luong le 22 Juil 2020
Modifié(e) : Bruno Luong le 22 Juil 2020
Replace "r = randi(97) ..." by
ncons = 4;
r = randi(size(A,1)-ncons+1)+(0:ncons-1)
You also specify 4 consecutive rows in your original question. Feel free if you want change 4 to something else.
KK14
KK14 le 22 Juil 2020
Thankyou for the answer.Had to modify, but the idea helped.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Entering Commands dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by