私は住宅で使用されている日々のエネルギー(Watts.hour)の274サンプル(9ヶ月)のデータセットを持っています。 lpc関数を正しく適用しているかどうかはわかりません。MATLABシンプル - 線形予測符号化とエネルギー予測
私のコードは以下の通りです:
filename='9-months.csv';
energy = csvread(filename);
C=zeros(5,1);
counter=0;
N=3;
for n=274:-1:31
w2=energy(1:n-1,1);
a=lpc(w2,N);
energy_estimated=0;
for X = 1:N
energy_estimated = energy_estimated + (-a(X+1)*energy(n-X));
end
w_real=energy(n);
error2=abs(w_real-energy_estimated);
counter=counter+1;
C(counter,1)=error2;
end
mean_error=round(mean(C));
は、 "n" は、分析上のサンプルなので、私はNで(LPCのcoefficientesを計算するために、1からのn-1に、エネルギーの配列の値を使用します= 3)。
その後、推定エネルギーを計算するために、提示された「for」サイクルに計算係数を適用します。
最後に、error2は、実エネルギーと推定値の間の誤差を出力します。
提示された例(http://www.mathworks.com/help/signal/ref/lpc.html)では、いくつかのフィルタが使用されています。フィルタを適用する必要がありますか?私の方法論は正しいですか?
ありがとうございます!