J=rand(9);K=rand(12);L=rand(10);a=meshgrid(J,K,L);sc=3;[n,m,p0]=size(a);SI=zeros(n,m,p0);for ii=1:nfor jj=1:mtd(:,1)=reshape(a(ii,jj,:),p0,1);if length(td(td>=0))/length(td)~=1SI(ii,jj,:)=nan;elseSI(ii,jj,1:sc-1)=nan;A1=[];for i=1:sc,A1=[A1,td(i:length(td)-sc+i)];endY=sum(A1,2);nn=length(Y);SI1=zeros(nn,1);for k=1:12d=Y(k:12:nn); Xn=Y(d); [zeroa]=find(Xn==0); Xn_nozero=Xn;Xn_nozero(zeroa)=[]; q=length(zeroa)/length(Xn); parm=gamfit(Xn_nozero); Gam_xs=q+(1-q)*gamcdf(Xn,parm(1),parm(2)); Z(d)=norminv(Gam_xs); endSI1(:,1)=norminv(SI1(:,1)); %output
SI(ii,jj,sc:end)=SI1;
MATLAB: Do I get “Array indices must be positive integers or logical values”
spi matlab
Best Answer