0

データをポイントごとに分析するために大きなループを実行していますが、今は無視したい移動平均を実行する必要があります。

%In-Flight Tag Averaging Center%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%HPOT DP%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    if PWRLVLCMDGPC(i) == 104 && time(i) > 86200
        if HPOTDP(i) ~= -1 && perf_case_c == -1
            hpotp_if_c(i) = HPOTDP(i) - hpot_pcp_c(i); 
            fun = @(x) mean(x(:));
            hpotp_rep_c = nlfilter( hpotp_if_c,[1 20],fun);
        end
    end

そのままでは、コードはnlfilter. 誰でもこれを回避する方法を見ることができますか?

最終的な目的は、計算される hpotp_if_c のスライド (移動) 平均を実行することです。そのため、平均 (1:20) がベクトル hpotp_rep_c の最初の点になり、平均 (2:21) が 2 番目の点になります。

これらの操作はすべて、より大きな for ループ内で実行する必要があるため、これらの関数は実際には機能しません。

4

1 に答える 1