matlab处理数据,提示“位置 1 处的索引超出数组边界(不能超出 59)”

执行后提示:
位置 1 处的索引超出数组边界(不能超出 59)。

出错 a_n (line 8)
[y(i,:), x(i,:)]=hist(data1(i,:),94);

请问大佬们怎么改这行代码?excel表里的数据是59*95

close all;
clear all;
data1 = xlsread('C:\Users\Desktop\alpha_normal_正则化数据.xls','sheet1'); %读入数据


for i=1:104

[y(i,:), x(i,:)]=hist(data1(i,:),100);   %统计频次分布   
 figure('Color','w');
 bar(x(i,:),y(i,:),1);
 h(i,:)=bar(x(i,:),y(i,:),1);  %画直方图
 set(h(i,:),'EdgeColor',[0.5 0.5 0.5],'FaceColor',[0.5 0.5 0.5]);
 hold on;
 normplot(data1(i,:));%人工判断是否正态分布        
 %%%%%%%%%%%%%%%%%%%%%
 [H,P,LSTAT,CV] = lillietest(data1(i,:));
if H==0    %不能拒绝H0,
    disp('原始数据服从正态分布');
    disp(i);
else
    disp('原始数据不服从正态分布');
       disp(i);
end

 %%%%%%%%%%%%%%%%%%%%


[mu(i),sigma(i)]=normfit(data1(i,:));

 a(:,i) = mu(i) + sqrt(sigma(i)) .* randn(94,1);

[h(i,:),sig(i,:),ci(i,:)]=ttest(data1(i,:),mu(i));
 if h(i,:)==0    %不能拒绝H0,
    disp('调整后服从正态分布')
else
    disp('调整后no')
 end
 filename = 'C:\Users\Desktop\alpha_normal_正态分布处理.xls';
 writematrix(data1,filename,'sheet',1,'Range','A1:CP59');


end

https://zhidao.baidu.com/question/2059240130492428547.html