Perform Operation Only on Specified Rows.
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have attempted to modify this code that circshifts the even rows a specified number of times, however I would like to make it more general, specifically to shift the first row by 0, the second row by N, the third row by N^2 the, then repeat after N times. Any help would be appreciated. Thanks.
A=randi(9,10,4)
N = 3;
for i = 1:N
idx=i:N:size(A,1)
Ae=A(idx,:);
for jj = i:N^2
Ae1=circshift(Ae,[0 -jj]);
A(i,:)=Ae1;
end
end
0 Kommentare
Antworten (1)
dpb
am 31 Jul. 2015
Bearbeitet: dpb
am 31 Jul. 2015
Warning: air code; untested...
k=0; % row counter (or compute on fly from i,j, your choice...)
L=size(A,1);
for i = 1:N:L % over number of sets of N in A
for j = i:N
k=k+1;
if k>L,break,end % done...
A(k,:)=circshift(A(k,:),[0 -j.^N]);
end
end
0 Kommentare
Siehe auch
Kategorien
Mehr zu Image Segmentation and Analysis 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!