• ベストアンサー

相関係数を使ったサンプルデータを生成する方法

相関係数を使ったサンプルデータを生成する方法を教えて下さい。 変数Aの中央値、標準偏差と変数Bの中央値、標準偏差、相関係数・・・リンク先Excelのピンクのセル を入力すると、 変数Bのサンプルデータ・・・リンク先Excelの水色のセル が出力されるようなものをExcelで作れたらと思います。 宜しくお願いします。 http://exp026.dataweb.ne.jp/Excel/sample.xls

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

  • ベストアンサー
  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.2

>これが3変数、4変数と増えていった場合はどのような計算式になるのでしょうか? http://en.wikipedia.org/wiki/Multivariate_normal_distribution の下のほうの Drawing values from the distribution てところに書いてありますね. 平均値のベクトルをμ,共分散行列をΣとしたとき,Σをコレスキー分解(LU分解)して,Σ=A*A^T と表します.(A:下三角行列) で,独立に標準正規分布に従うN個の確率変数のベクトルをZとして, μ+A*Z を計算すればよいってことです.

naoki263
質問者

お礼

rabbit_cat様 ご丁寧な回答ありがとうございます。 私に知識がないもので、「Σ=A*A^T」のTが何をあらわしているのかと、「コレスキー分解」が分かりません。 勉強不足で申し訳ありません。 どうかご教示ください。 また参考文献、WEBなどありましたら勉強しますので宜しくお願いします。

その他の回答 (1)

  • rabbit_cat
  • ベストアンサー率40% (829/2062)
回答No.1

Aの平均をμA,標準偏差をσA Bの平均をμB,標準偏差をσB A,Bの相関係数をr としたとき, 標準正規分布N(0,1)に従う,2つの独立な確率変数をX,Yとして, A =μA + σA*X B =μB + r*σB*X + σB*√(1-r^2)*Y を計算すればいいです.

naoki263
質問者

お礼

rabbit_cat様 素早いレスありがとうございます。 2変数でデータを生成する事ができました。 ありがとうございます。 大変助かりました。感謝!! 追加で質問させて下さい。 これが3変数、4変数と増えていった場合はどのような計算式になるのでしょうか? 質問内容が少し変わりますので別スレッドを作った方が良いのであれば作ります。(勝手が分からずすいません。) 宜しくお願いします。

関連するQ&A

  • 相関がないのに相関係数が1???

    相関係数の意味を考えていて、理解できないことが出てきたので教えて下さい。 変数Xと変数Yの相関係数の求め方は、データ数がnの時、  1.変数X,Yの平均値を求める。ここでは、X^、Y^と書くことにします。  2.変数X,Yの標準偏差を求める。ここでは、σx、σyと書くことにします。  3.変数X,Yを基準化する。     基準化したX=(X-X^)/σx、 基準化したY=(Y-Y^)/σy  4.基準化したX,Yの積の平均が相関係数である。     r=1/n・Σ{(基準化したX)・(基準化したY)} となります。 基準化したXと基準化したYの積が全て1のデータの場合、 例えば、(1,1)、(0.5,2)、(0.4,2.5)、(0.1,10)、(0.01,100)、(-1,-1)、(-0.5,-2)、(-0.4,-2.5)、(-0.1,-10)、(-0.01,-100)‥‥‥ 双曲線になりますが、平均値と標準偏差で元のデータに戻しても、双曲線みたいなデータの散布図になります。つまりXが大きければYも大きいという関係がないにもかかわらす相関係数は1になってしまいます(というか1になるようにデータを選んだ)。 考え方に間違いがありますか。

  • 相関係数を指定して二変量データを作成する

    相関係数、平均、標準偏差を指定して二変量データを作成しようとしていますが、なかなかうまくいきません。 http://oshiete1.goo.ne.jp/qa2413827.html こちらの回答を参考にしてエクセルで試してみたのですが、出力されたデータの相関係数、平均、標準偏差を調べて見るとどの値も微妙にずれてしまいます。

  • 相関係数・標準偏差の表示方法

    エクセルにて相関係数・標準偏差の表示方法を1つのセル(セルの大きさは大きくなってもかまいません)教えてください。 相関係数 http://ja.wikipedia.org/wiki/%E7%9B%B8%E9%96%A2%E4%BF%82%E6%95%B0 標準偏差 http://ja.wikipedia.org/wiki/%E6%A8%99%E6%BA%96%E5%81%8F%E5%B7%AE です 分数の表示や長くのびた平方根の入力などわかりません。

  • 標準偏差,相関係数が綺麗になるデータの求め方

    標準偏差,相関係数がある程度綺麗になる(小数第2位程度まで)ようなデータを人工的に作りたいのですが,何か良い方法はありますでしょうか。 理想としては,プログラミングを用いてデータと標準偏差,相関係数がそれぞれ出力されるのが良いですが,より良い方法があるならば教えて頂きたいです。 プログラミングならばその内容まで教えて頂けると幸いです。 なお,データの数は5~20個程度で,数値は1~3桁です。 よろしくお願い致します。

  • 相関係数が1になるのはなぜ

    データ群Aとデータ群Bの相関係数を調べようとしています。 データ群Aはy=x データ群Bはy=2x-5 0<=x<=10 このデータ群の相関係数を 共分散/(√Aの分散×√Bの分散) で計算すると相関係数が1となります。 明らかにデータ群AとBが違っているのに相関係数が1になるのはなぜなのか、また、このデータ群の相関係数の正しい求め方を教えてください。 よろしくお願いします。

  • 相関係数と標準偏差

    相関係数と標準偏差 相関係数の分母がなぜ標準偏差になるのかわかりません。 なぜ平均や分散ではだめなのでしょうか。 数学の初心者にもわかりやすい解説をいただけるとうれしいです。

  • 相関係数の特殊な求め方 

    相関係数を共分散なしで、x、yの平均と標準偏差のみで求める方法はありますか? よろしくお願いします。

  • 相関係数の計算について質問です。EXCELにCORREL関数というのが

    相関係数の計算について質問です。EXCELにCORREL関数というのがあり、2つの変数の相関係数を計算できることを聞きました。一種の回帰分析のような計算をすることのようです。計算式(EXCELの関数)は=CORREL($A1...$A100,$B1...$B100)というような式のようです(この場合、同一変数のA列の1から100行までのデータと、相関をみる別の変数のB列の1から100行までのデータの相関を計算し、A列の変数とB列の変数の相関値(答えはひとつ)を出すということのようです。そこで質問なのですが、この100のデータの個々の相関係数(つまり、データひとつひとつをこの関数(CORREL)で計算した相関値をあとでその総和としての100のデータの相関値にする計算はできるのでしょうか。つまり、この100のデータの分類(同種の仲間として分析したい)をやる場合、その同種の分類の数だけこの関数計算をしなければならないので、先に個々のデータごとに必要な分析結果を出しておいて、後で同分類ごとに集計(総和)した結果を出したほうが早いと思ったので、この質問をしています。そもそも、この考え方のほうが結果が早く出るのかということも含めて、どなたかよくご存知の方、おしえてください。お願いします。

  • 相関係数、決定係数からの考察

    説明変数x、被説明変数a,bがあったとします。 そこで例えば xに対してaの相関係数、決定係数がそれぞれ0.5、0.6 xに対してのbの相関係数、決定係数がそれぞれ0.7,0.8 であったとします。 この場合では、xはaよりもbの方をよりよく説明していると思うのですが、その理由は何でしょうか? 相関係数、決定係数の値が高いから…というのは何となく違うというかすっきりしないです(間違ってるのかもですが) 回答の程お願いします。

  • 相関係数

    相関係数について質問させて頂きます。 EXCEL関数の"CORREL"で求められる相関係数と同じデータをしようして散布図を作成した際のR2乗値が異なるのはなぜなのでしょうか?