Error using Zeros, size input must be integers.

Hi
I get this message (error using zeros, size input bust be integers ) when running this code. anyone knows how to fix this ?
Qd=zeros(size(Q,1)/24,length(A));
for i=1:length(A)
for d=1:size(Q,1)/24
bk=Q(1+24*(d-1):24*d,i);
k=~isnan(bk);
Qd(d,i)=sum(bk(k))/length(k);
end
end
thanks

 Akzeptierte Antwort

KSSV
KSSV am 17 Mär. 2021
Bearbeitet: KSSV am 17 Mär. 2021

0 Stimmen

Qd=zeros(round(size(Q,1)/24),length(A));
for i=1:length(A)
for d=1:round(size(Q,1)/24)
bk=Q(1+24*(d-1):24*d,i);
k=~isnan(bk);
Qd(d,i)=sum(bk(k))/length(k);
end
end
The indices of matrices in MATLAB should be poittive integers.. when you are using size(Q,1)/24, if size(Q,1) is not multiple of 24 you will get a fraction and it will throuw error. So using round will round the number into nearest integer.

Weitere Antworten (0)

Kategorien

Mehr zu Startup and Shutdown finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 17 Mär. 2021

Kommentiert:

am 17 Mär. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by