Sustituir bucles for para más eficiencia
Publicado por García (42 intervenciones) el 29/12/2014 07:17:49
Quiero guardar el número de ceros por columnas de R en un vector D. El siguiente código lo realiza con for y me gustaría hacerlo de la forma más eficiente con vectores:
Gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
R=rand(3,7,2);
p=0.45;
R(R(:,:,:)<=p)=1,R(R(:,:,:)~=1)=0;
D=(1:size(R,2)); % Vector para guardar el número de ceros por columna
%Inicializamos variable.
contador_ceros=0;
for k=1:size(R,3)
for j=1:size(R,2) %Vamos mirando todos los elementos
for i=1:size(R,1)
if R(i,j,k)==0 %1
contador_ceros = contador_ceros + 1;
end %1
end % for j
D(k,j)=contador_ceros;
contador_ceros = 0; %reiniciamos el contador de ceros para contar en la siguiente fila
end % for i
end %for k
Gracias.
Valora esta pregunta
0