MATLABで外れ値をプロットする方法を教えてくだ
MATLABで外れ値をプロットする方法を教えてください。
具体的には下記のとおりです。
MATLABで、中央値+中央値から±20%離れた時系列データをプロットするにはどうすればよいでしょうか?
冗長なprogramしか作成できないため、よい関数か、方法があれば教えていただきたく思い、
質問しました。
まず、時系列データですが、数十万点数からなる信号になっています。
この信号の中央値をだし、その中央値から±20%の範囲でひっかかるデータをplotしたく思っています。
中央値算出は、関数を知っていますので処理が早いのですが中央値から±20%の範囲でひっかかるデータをプロットするのにいまは、以下のような考えで行っています。
行データ、size(x(:)) ans=:1000000 1とおきます。
まず、
1)中央値を求める。
2)median+20%、median-20%を求める。
3)
hold on;
for i=1:1:data-length
if(x(i)<=median-20% & x(i)>=median+20%) plot x(i) endif
end
というようにしています。しかし、これではデータ一点一点検討する必要があるので冗長で、処理に時間が
かかります。
そのため、for文を使わずに、
medi-20(:)=function(x(:),median-20)
medi+20(:)=function(x(:),median+20)
で計算できるような、関数functionを教えていただけると幸いです。
よろしくお願いします。
お礼
明快なご回答ありがとうございました。 今まで、つっかえていたモノがすっきりしました。