关于#matlab#索引超数组边界?

求问:matlab提示“位置 1 处的索引超出数组边界
代码如下:


```bash
clc;clear
cd('E:\')
sta_info=readtable('E:\站点.xls');

for i=1:length(sta_info.Sta)
    data_in=readtable(['E:\全国气象数据\', num2str(sta_info.Sta(i)),'.csv']);
     Tmax=data_in.Tmax;
    Tmin=data_in.Tmin;
    ts_YY=data_in.Year;
 
    data_summ=zeros(2019-1960+1,7);
    
        k=0;
    for YY = 1960:2019
        k=k+1;
        Tmax_year=Tmax(ts_YY==YY,1);
        Tmin_year=Tmin(ts_YY==YY,1);
        [Day_HW,Day_logi]=runsTheory(Tmax_year,quantile(Tmax,0.9),3);
        [Night_HW,Night_logi]=runsTheory(Tmin_year,quantile(Tmin,0.9),3);
        
         data_summ(k,1)=YY;
        if ~isempty(Day_HW)&&~isempty(Night_HW)
            CDN_logi=and(logical(Day_logi),logical(Night_logi));
            CDN_info=runsTheory(CDN_logi,1,3);
            data_summ(k,6)=(CDN_info(1,1));
            data_summ(k,7)=(CDN_info(end,2));
            
            inde_Day_logi=Day_logi-CDN_logi;
            inde_Day_info=runsTheory(inde_Day_logi,1,3);
            inde_Night_logi=Night_logi-CDN_logi;
            inde_Night_info=runsTheory(inde_Night_logi,1,3);
            
            data_summ(k,2)=(inde_Day_info(1,1));
            data_summ(k,3)=(inde_Day_info(end,2));
            data_summ(k,4)=(inde_Night_info(1,1));
            data_summ(k,5)=(inde_Night_info(end,2));
        else
            data_summ(k,2)=(Day_HW(1,1));
            data_summ(k,3)=(Day_HW(end,2));
             data_summ(k,4)=(Night_HW(1,1));
            data_summ(k,5)=(Night_HW(end,2));
            data_summ(k,6)=0;
            data_summ(k,7)=0;
        end
        
    end  
        
   
    out_table=table(data_summ(:,1),data_summ(:,2),data_summ(:,3),...
        data_summ(:,4),data_summ(:,5),data_summ(:,6),data_summ(:,7),'VariableNames',...
        {'Year','Day_first','Day_last','Night_first','Night_last',....
       'CDN_first','CDN_last'});
    writetable(out_table,['E:\time\',num2str(sta_info.Sta(i)),'.csv'])
    
end



![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/129247251876111.png "#left")

“Devil组”引证GPT后的撰写:

Tmax_year=Tmax(ts_YY==YY,1);
Tmin_year=Tmin(ts_YY==YY,1);

检查循环的最大值,应该是数组下标越界了,需要注意的是matlab数组下标是从1开始的