📄 que1hivniheright.m
字号:
clear
load que1hivniheright
hivnihe=ones(356,45)*1000;
for i=1:1665
j=fix(A(i,1));k=fix(A(i,2)+1);
if isnan(j)==0&isnan(k)==0&k>0&k<=45&isnan(A(i,5))==0
hivnihe(j,k)=A(i,5);
end
end
phiv=zeros(356,3);xiabiao=zeros(356,45);
for i=1:356
for j=1:45
if hivnihe(i,j)~=1000
xiabiao(i,j)=j;
end
end
end
nihex=zeros(356,8);
nihey=ones(356,8)*1000;
for i=1:356
k=1;
for j=1:45
if hivnihe(i,j)~=1000&xiabiao(i,j)~=0
nihex(i,k)=xiabiao(i,j);
nihey(i,k)=hivnihe(i,j);
k=k+1;
end
end
end
l=ones(1,356);
for i=1:356
k=1;
while nihex(i,k)~=0
k=k+1;
end
k=k-1;
x=nihex(i,1:k);
while nihey(i,l(i))~=1000
l(i)=l(i)+1;
end
l(i)=l(i)-1;
y=nihey(i,1:l(i));
phiv(i,:)=polyfit(x,y,2);
end
for i=1:356
for j=1:45
if hivnihe(i,j)==1000;
hivnihe(i,j)=polyval(phiv(i,:),j);
else
l(i)=l(i)-1;
end
if hivnihe(i,j)<=0|l(i)==0
hivnihe(i,j)=0;
end
end
end
bilvhiv=zeros(356,45);
for j=1:356
k=1;
while k<=45&hivnihe(j,k)~=0
k=k+1;
end
k=k-1;
for i=1:k
if i==1
bilvhiv(j,1)=(-3*hivnihe(j,1)+4*hivnihe(j,2)-hivnihe(j,3))/2;
elseif i~=k
bilvhiv(j,i)=(hivnihe(j,i+1)-hivnihe(j,i-1))/2;
elseif k>2
bilvhiv(j,k)=(hivnihe(j,k-2)-4*hivnihe(j,k-1)+3*hivnihe(j,k))/2;
end
end
end
x=zeros(1,45);y=zeros(1,45);
for i=1:356
for j=1:45
if bilvhiv(i,j)~=0
x(j)=x(j)+1;
end
if hivnihe(i,j)~=0
y(j)=y(j)+1;
end
end
end
bilvhivmean=sum(bilvhiv)./x;
hivnihemean=sum(hivnihe)./y;
bilvhivmean(45)=[];
hivnihemean(45)=[];
month=1:44;
plot(month,bilvhivmean,'r.')
figure
plot(month,hivnihemean,'r.')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -