MATLAB覚書

モチベーション低迷中のときは,K山先生の業績欄をデスクトップに写して自分を煽る.

>> load ファイル名.dat;
>> year=ファイル名(:,1);
>> inData=ファイル名(:,2);
>> dd=min(year):1:max(year);
>> yy=spline(year,inData,dd);
>> O=[dd;yy]';
>> O

O =

これで1年等間隔Splineデータの完成.
EEMDは,C大学で配布されているMATLABプログラムをそのまま使用.

rslt=eemd(yy,0,1);


それぞれの列の周期性を確かめるためFFTを実行.

>> Y1=fft(rslt(:,2));
>> Y1(1)=[];
>> n=length(Y1);
>> power=abs(Y1(1:floor(n/2))).^2;
>> freq=(1:n/2)/(n/2)*(1/2);
>> plot(freq,power)

このときのX軸はcycle/yearであるから,periodicityに直す.

>> period=1./freq;
>> plot(period,power);


しかし,信頼区間は必要そう.