• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MATLABで外れ値をプロットする方法を教えてくだ)

MATLABで外れ値をプロットする方法

このQ&Aのポイント
  • MATLABで、中央値+中央値から±20%離れた時系列データをプロットする方法を教えてください。
  • 冗長なプログラムを作成する必要なく、関数を使用して中央値から±20%の範囲内のデータをプロットする方法を教えてください。
  • この方法を使用すると、データ一点一点を確認する必要がなく、処理時間を短縮することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • m0r1_2006
  • ベストアンサー率36% (169/464)
回答No.1

配列 x にデータが入っていて, そこから,A < x <B の範囲のデータを取り出したければ, index = find((x>A) & (x<B)); y = x(index); とすれば,配列 y には A<x<B を満たす x のみ入る. 例 x = rand(1,10000); index = find((x>0.2) & (x< 0.8)); y = x(index); whos

anene0000
質問者

お礼

大変ありがとうございます。 助かりました。 また御礼が遅くなり申し訳ありませんでした。 matlab likeのオープンソースでもこのやり方が使えるようでしたので、大変助かりました。 ありがとうございます

その他の回答 (1)

  • Kules
  • ベストアンサー率47% (292/619)
回答No.2

両方の回答合わせると完全なものになってますよね。 まあ関数を作るのであれば function [m_minus20 m_plus20]=myfunction(x,percent) みたいなものを作って、その中でmedianから外れ値の計算まで全てする感じでしょうか。 参考になれば幸いです。

anene0000
質問者

お礼

回答をありがとうございます。 自作関数についてお教えいただきありあとうございました。 この場合は、外から呼び出すこともできるのですね。 なるほどです。 ありがとうございます。

anene0000
質問者

補足

大変ありがとうございます。回答に気づくのが遅く、質問を締め切ってなく申し訳ありません。 心としてベストアンサーに選ばせていただきたいのですが、、ベストアンサーに選べるのはお一人だけなので、、、先に回答いただいた方にお礼のベストアンサーをさせていただきます。 処理としては、おっしゃられる関数を作るほうが長大なプログラムを作る際には便利だと思いました。 回答ありがとうございました

関連するQ&A