EOF分解程序
fid=fopen('HadISST1_SST_1961-1990.txt','r');
Num=360;
data=zeros(360,180,Num);
for i=1:Num
aaa=fscanf(fid,'%s',7);
data(:,:,i)=fscanf(fid,'%f',[360,180]);
end
sst1=data(1:90,11:70,1:Num); % 选取所需要区域的数据sst2=data(311:360,11:70,1:Num);
sst3=zeros(140,60,Num);
sst3(90:-1:1,1:60,1:Num)=sst1;
sst3(140:-1:91,1:60,1:Num)=sst2;
sst=sst3;
for i=1:140
for j=1:60
for k=1:Num
if(sst(i,j,k)==-1000)||((sst(i,j,k)==-32768))
页脚内容1
sst(i,j,k)=NaN;
end
end
end
end
sst_area1=zeros(Num,8400); % zeros全零数组
for i=1:Num;
squ=squeeze(sst(:,:,i)); % 执行该指令后sst数据转换为二维数组sst_area1(i,:)=reshape(squ,1,8400); % 将数据转变为二维
end
sst_nan=isnan(sst_area1);
i=0;
for j=1:8400
if sum(sst_nan(:,j))==0;
i=i+1;
sst_region(:,i)=sst_area1(:,j);
end
页脚内容2
相关主题