[fpr 2171] あるベクトルとrという相関を持つベクトル(群)の作成法

狩野裕

狩野@大阪大学です

指定した共分散行列Sigma(相関行列)をもつようなデータを生成するには
次のようにします.

1) x_1, ... x_n を与えられたp-次元のデータベクトルとし,これを適当に変換して,
  その標本共分散行列がSigmaに等しくなるようにしたいとします.
2) x_bar と標本共分散行列Sを計算します
3) Sの平方根となる行列S^{1/2}を計算し,その逆行列S^{-1/2}を計算します
4) Sigmaの平方根となる行列Sigma^{1/2}を計算します.
5) 上記のデータベクトルをSigma^{1/2}S^{-1/2}で変換します.すなわち
	y_i=Sigma^{1/2}S^{-1/2}x_i  (i=1,...,n)
とすると,y_1,...,y_nの標本共分散行列は,与えられたSigmaに等しくなります.

なお,平均ベクトルも与えられた値 a に等しくするには
	y_i=Sigma^{1/2}S^{-1/2}(x_i-x_bar)+a  (i=1,...,n)
とします.

一般には,行列の平方根とは,固有ベクトルはそのままで固有値の平方根をとったもので
置き換えたものですが,ここでの要求のように,ふたつの系列でひとつは変換したくない
というときは,下三角行列の平方根を作成することになります.

なお,この方法では,x_iが独立であったとしても,y_iは独立にはならないので,この点には
注意が必要です.

○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○
 狩野  裕 大阪大学人間科学部
 〒565-0871 吹田市山田丘1−2  Phone/Fax:06-6879-8052
 http://koko15.hus.osaka-u.ac.jp/~kano/
 You can get pdf files of the current articles of Behaviormetrika.
 Visit http://wwwsoc.nii.ac.jp/bsj/behaviormetrika_index.html
●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●○●




> すみませんが教えて下さい。
> n次元のベクトルがあるとします。
> このベクトルと、こちらが指定した相関係数を
> もつようなベクトル(群)をつくる方法が知りたいです。
> どうしたらよいでしょうか?
> 特に、SかR用の関数があれば助かります。
> 
> 敬具
> -----------------------
> Hiroto Miyoshi
> 三好弘人
> h_m_ (at) po.harenet.ne.jp
> 
> 
> 


スレッド表示 著者別表示 日付順表示 トップページ

ここは心理学研究の基礎メーリングリストに投稿された過去の記事を掲載しているページです。