• ベストアンサー

xとyの値を持つ複数のデータから値を大きく逸脱するデータを除外した平均

xとyの値を持つ複数のデータから値を大きく逸脱するデータを除外した平均値を求めたいです。 添付の画像に、イメージ図を記しました。除外したいデータが赤のドットになります。 こういうのは、平均値ではなく中央値になるのですか? で、そのような値をプログラムで求めるには、どうしたら良いですか? 言語はcを使ってますが、手続き型言語で一般的な回答でも結構です。 よろしくお願いいたします。

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

  • ベストアンサー
noname#182251
noname#182251
回答No.2

イメージ図から考えて 1.最小二乗法で最もフィットしそうな直線を求める 2.直線と点の距離を計算する 3.距離の最も大きな点を除外する 4.1.に戻ってループを繰り返す このような方法で如何でしょうか?ループしなくても3.時点で一定距離以上を削除でよいのかもしれません 最小二乗法に関しては、以下などをご参照ください http://szksrv.isc.chubu.ac.jp/lms/lms1.html ついでに云えば、質問内容は数学カテゴリーの方が良い回答が出そうです。またデータの出所(どのような種類のデータなのか)や除外する目的などを記載した方が目的になかった回答を得やすいでしょう。

kingfruits
質問者

お礼

fuuten_no_nekoさん、ご回答ありがとうございました。 >ついでに云えば、質問内容は数学カテゴリーの方が良い回答が出そうです。 ずいぶんと迷ったのですが、プログラムにしやすい回答が欲しかった物で。 >4.1.に戻ってループを繰り返す みたいな。 ご回答は大変参考になりました。どうもありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「大きく逸脱する」かどうかをどうやって判定するのでしょうか? その方法を決めないことには「プログラム」は書きようもありませんよ.

kingfruits
質問者

お礼

Tacosanさん、ご意見ありがとうございました。 そうですね。曖昧な質問でしたので、回答のしようがないですよね。 もう少し具体的な質問にして出直します。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • いくつかの(x,y)値から、関係式(近似)を求めたいです。

    手元にx軸とy軸からなる図(グラフ)があり、ここからxとyの関係を表す数式(近似のもの)を求めたくて試行錯誤しているのですが、なかなかうまくいきません…。 xとyの値は図から大体読み取れて、だいたい質問欄下部のようになっています。 xの値が大きくなればなるほど、yの増え方が緩やかになるグラフです。 Excelの近似曲線で求められるかと、いろいろ試してみたのですが、 グラフの一部分が望みとかなりずれてしまい、うまくいきませんでした。 (x,y)の値を5点ほど書くと、下のような感じです。 (x, y) (0, 0) (50, 0.75) (100, 1) (500, 1.75) (1000, 2) (0 < x < 1000)が合っていれば、その他の値はどうでもいい感じです。 Excelを利用する方法でも、それ以外の方法でもよいですが、 何かよい方法がありましたら、教えて頂きたいです。 よろしくお願いします。 (図も、用意できたら添付しようと思います)

  • 複数GPSログの同時刻データの平均化

    こんにちは。 よくGPSでログを取っているのですが、GPS機器がたくさんあり、同時に複数のログが出来上がることが多くなりました。 いわゆるハンディGPS、GPSログを取る専用のロガー、GPS受信機を備えたデジタルカメラ、スマートホン(現役機種と灰ロム機種)の計5台あります。 それぞれで取ったデータをまとめて、時刻順に並べることによって、欠測を補うことができると思ったのでやってみたのですが、同時刻のデータが複数できることがあるので、それをどう扱うか困っています。 理想としては、同時刻データが4つあったとしたら、著しく外れたデータを除外して、残りの3つのデータの平均を計算して残していきたいと思っています。 イメージとしてはこんな感じです。 それぞれの機種のデータを以下のような感じのものとします。 時刻 機種1 機種2 機種3 機種4 12:00:00 139.00/39.00 139.00/39.00 139.00/39.00 139.00/39.00 12:00:01 139.02/39.02 欠測 139.04/39.04 139.55/38.99 12:00:02 139.03/39.03 139.05/39.05 欠測 欠測 12:00:03 139.06/39.06 139.05/39.05 139.07/39.07 139.12/39.12 これを 12:00:00 139.00/39.00 12:00:01 139.03/39.03 12:00:02 139.04/39.04 12:00:03 139.06/39.06 という結果にしたいのです。 同時刻のデータが10程度の数であれば手計算ですればいいことですが、これが100を超えたりすると手に負えません。 なので、これを自動で計算する方法を教えてください。 OSがWindows8.1のPCをもっています。そこには、カシミール3Dなどのソフトウェアが入っています。 なお、コンピュータプログラムのことはほとんどわかりませんので、プログラム言語を並べるようなご回答はご遠慮ください。 よろしくお願いします。

  • 複数のデータの内、0以上の値のセル1/4個分の合計

    やりたいことは、複数のデータの内、0以上の値を示すいくつかのセルの、その1/4個分のセルの合計を出すことです。 図で具体的に説明します。 A列に37個のデータがあります。 このうち、値が0以上のセルは、A7からA27までの21個です。 このうち、上1/4個分のセルの合計を出したいです。 計算するセルは、5.25個(セル21個/4)のセルなので、 A列の場合は、 A7+A8+A9+A10+A11+(A12*0.25) で計算することになります。 ただ、A列だけですといいのですが、 実際には、72列あります(添付の図は、そのうちの3列分です)。 また、それぞれの列で、値が0以上のセルは、それぞれ異なります。 なにか、良い方法はないでしょうか? 教えてください。 よろしくお願いします。

  • Excelで複数のデータを1つのグラフにまとめたい

    Excelで1つのデータをグラフにすることは出来るのですが、複数のデータを1つのグラフ内にまとめて表示させる方法が分かりません。例えば次の2種類のデータ(1),(2)があったとします。     (1)    |   (2)   X   Y  |  X   Y   2   20  |   5   18   6   34  |  7   22   8   38  |  13   35   11   45  |  16    41 このX,Yは単位などもそれぞれ同じなので1つの散布図のグラフ内にまとめたいのですが、全てを一気に選択してグラフにしても上手くいきませんでした。どなたか複数のデータを1つのグラフ内に収める方法を教えてください。私はまだPCに弱いので、できるだけ丁寧に教えてもらえると有り難いです。

  • エクセル 複数のX軸に対応した1つの図を作りたい

    エクセルで複数のXの値列に対するグラフを1つの図に作成したいのですができるでしょうか? X1:10、20、30 Y1:100、200、300 X2:5、7、30 Y2:10、20、100 というような具合のデータがあります。X1とX2とを同時にX軸として採用したいのですが、エクセルで別々の列をX軸として採用すると何故かX軸の値がおかしく表示されてしまいます。 エクセルではそういうグラフを作るのは不可能ということでしたら、どなたかフリーウェアで、上記のようなグラフを作成できるソフトを教えてくださると助かります。その場合、エクセルもしくはCSV形式のデータを読み込んでくれるソフトですと助かります。

  • EXCELでデータの2点間の値を求める方法

    例えばある2次元のデータが500点あるとします(x[1],y[1]),(x[2],y[2])・・・・・(x[500],y[500])。それをEXCELの散布図でグラフを作成したとき、それを平滑点で結びましたが、例えばある2点(x[i],y[i])と(x[i+1],y[i+1])の間にあるxの値における、その時のyの値を求める方法ってありますか? 

  • 散布図からの近似曲線、近似式の出し方(Xの値が大きくなると、ある一定のYの値に限りなく近づく場合)

    少々複雑な酵素反応から得られた、あるデータから散布図を書きます。 これから求められる曲線は、Xの値が大きくなると、Yの値は、ある一定の値に限りなく近づくと考えられます。 (プラトーに達するという意味です。反応系から行っても、多分、そうなると予測はつきます。) しかし、マイクロソフトExcelでは、そのような近似曲線はかけません。 このような近似曲線(近似式)は、何というのでしょうか? このような近似曲線および、近似式、R2乗値、がでるフリーソフトウェアが教えて頂けないでしょうか? 実際にやりたいのは、その近似式を使い、Yが特定の数値の場合、Xの値はいくつなのかを計算したいと考えています。 わかりづらい質問で恐縮ですが、大変困っています。 どうぞ、よろしくお願いします。

  • 前のデータから次の値を求める方法を教えてください

    ある機械のデータからそのデータをx,y軸のグラフにしました。 a=(x1,y1)、b=(x2,y2)、c=(x3,y3)、d=(x4,y4)、e=(x5,y5) と言うデータが得られました。(x1<x2<x3<x4<x5) そして、x,yグラフ上で散布図とします。 ここで、 f=(x6,y6)、g=(x7,y7)、h=(x8,y8)を得られたデータから推定したいのですがどうしたらいいのでしょうか? (x5<x6<x7<x8) グラフは散布図でx軸の間隔はばらばらです。 a~eまでのデータを元にx6のときのy6、x7のときのy7の値を求めたいのですが、どのような計算方法を使ったら良いのでしょうか?

  • エクセル2010 グラフX軸とY軸を入替するには

    データ系列が複数あるグラフの場合,図のようなグラフのX軸とY軸を交換するには どのような方法があるか教えてください。 よろしくお願いいたします。

  • 折れ線グラフのx軸に任意のデータを入れる方法

    エクセル2010を使用しています。 どなたか、10行×3列のデータ(添付図のA1:C:10)を添付図のように折れ線グラフで書いた後で、10行×1列の連続データ(添付図のD1:D10)をx軸の値としてグラフに取り込む方法を教えてください。 よろしくお願いします。

このQ&Aのポイント
  • DCP-2535Dを使っているが、期限切れのためプリンターの追加設定が必要
  • "名前"と"アドレス"の入力方法がわからない
  • アドバイスをお願いしたい
回答を見る