- ベストアンサー
二変数の線形近似の方法
ある二変数(x,y)に正の相関があることがわかりました。 最小二乗法などで回帰直線を求めてみたのですが、散布図に当てはめても、どうもずれているようなものになってしまいました。 変数が正規分布しているとみなせるなら、傾きが(yの標準偏差)/(xの標準偏差)、点(xの平均,yの平均)を通る直線で近似できると思うのですが、かなり歪んだ分布で、片方に裾が広がっています。 このようなケースでうまく近似する直線を求めるにはどうすればよいでしょうか。方法が間違っているのでしょうか。 質問に不備がありましたら補足要求をお願いします。よろしくご指導ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1です. 補足を拝見してきちんと考えていらっしゃるのがよくわかりました. 残念ながら筆者にはこの問題についてあまり有効なアドバイスはできそうにないのですが,一連のやり取りをご覧になった識者が助言を下さることと期待します. <考えられる点についてのコメント> 人間の場合だと,母集団に大きく依存するが,同じ身長でも,体重のばらつきが一般には大きく,質量(体重)の内訳を分析すると 同じ身長で比較した場合 @骨格や内蔵は個人差は小さい. @筋肉は体質やトレーニング等である程度異なるが,特殊な集団でない一般人の場合だと,そう大きくは違わない. @残りの脂肪の部分が個人差が大きい.(つまり身長との直接の単純な関係式を求めるのはやや苦しい) そういった推定から(妥当かどうかはご検討ください),それぞれの身長ごとにみて,体重が少ない方の端(ただし病的にやせていて集団から大きく離れているデータは除外)を連ねた曲線は,身長ごとの"最小構成(骨格+内蔵+最小限の筋肉)"の体重モデルを表し,これを両対数グラフで累乗近似を想定して回帰直線がうまく求まるか試してみる. あとは(身長ごとにみて)その基本構成にいくらかの付加的な筋肉とおそらく多くの脂肪とが付け加わって重い方に向かって(際限なく?)分布が広がっていると考えられ,身長ごとにみて(データ数が少なければ身長ごとにいくつかの階級に分けてそれぞれの階級ごとに)最小構成体重の回帰直線から推定される基準値に対しどの程度の割合の広がりがあるかを評価する.ただし,これは対数のまま分析するのが妥当か,元の変数で比べるのが良いかはご検討ください. 例えば,対数のままだと,基準値に対して,各身長でみて体重が同じ割合で(太っているほうに)広がっているとすると,対数をとると定数の差になるので,基準の回帰直線と平行なもう一本の直線とに挟まれたベルト状の領域に大部分の点が分布することになる. ただし,実際にはそうならない(例えば,背の高いほうが体重の分布の割合[広がり]も大きい)かも知れません. いずれにしても,無理を承知の上で全データによる回帰直線とも比較してみた方が良いでしょうが,質問文からすると,全データによる単純な回帰直線はあまり有効な(意味のある)分析になっていないのかも知れません.それはそれで考察にはなるでしょうが. 以上,素人の憶測に過ぎませんので,笑ってお許し下さい. ともあれ,データが日本人のものならば,今はまだばらつきはアメリカよりも大きくなさそうですが...
その他の回答 (2)
- wolv
- ベストアンサー率37% (376/1001)
x・yのそれぞれが正規分布とみなせ、 x・yの散布図が楕円のようになる場合には、 直線近似が意味がありますが、 そうではない場合は注意が必要です。 xとyの意味を考え、適当な変換をするべきだと思います。 たとえば、立方体の一辺の長さをx、体積をyという場合は、 xとyの散布図を直線に当てはめるのではなく、 X=x^3 (xの3乗) Y=yのような変換をした上で プロット、直線への当てはめをするべきですね。 x、yがそれぞれどんなものかを示してくれると、 どういう変換するべきかをアドバイスできるかもしれません。
お礼
こういったアドバイスをいただくと、自分の質問内容にどんな説明不足があるのかがとてもよく分かります。ありがとうございました。
補足
ありがとうございます。 変数の性質について補足しますと、長さと重さの対数です。 ご指摘にあるように、立方体と考えれば3乗に比例しますし、成人の身長と体重がほぼ2乗に比例することから類推して、累乗近似を使いました。(Y=BX^A) 対数をとれば線形近似になると考え(y=Ax+b)、プロットすると散布はほぼ楕円形になりました。ただ、重さの偏りが大きく、重いほうに裾が広がっています。
- oshiete_goo
- ベストアンサー率50% (374/740)
本当に直線的な関係が妥当なのか,元の問題の性質からもう一度検討なさった方がよいかも知れません. 実はy=ax^2 だとか,y=blog(x) +c とか,y=Ae^(kx) だとか,何か問題の方から期待される関係があれば,そうした形でfittingをした方が良いでしょうし,何も分からないほど大ざっぱな話ならば,無理に回帰直線を求めても,ご質問のような状況ではあまり意味のある結果は得られないのではないでしょうか.
補足
ありがとうございます。 仰るとおり、求めても意味のないものと分かれば捨てるべきですね。 問題の性質については、No.2の補足欄に検討内容を書きました。妥当性について、ご指摘いただける点があればお願いします。
お礼
ご指摘の内容を参考に、説明変数ごとに目的変数の上下25%をトリミングしたところ、非常に満足のいく関係式が現れてきました。(最大値ほどではありませんが、最小値もいささか暴れていましたので、中央値付近を使うことにしました) 追加回答、誠にありがとうございました。