numpy の multivariate_normal を使ってみる
Python
Published: 2019-08-07

やったこと

Numpy で multivariate_normal を使ってみます。

確認環境

$ ipython --version
6.1.0
$ jupyter --version
4.3.0
$ python --version
Python 3.6.2 :: Anaconda custom (64-bit)
import numpy as np
np.__version__
'1.13.1'

調査

共分散

共分散(きょうぶんさん、英: covariance)は、2組の対応するデータ間での、平均からの偏差の積の平均値である

共分散行列

統計学と確率論において、ベクトルの要素間の共分散の行列である。これは、スカラー値をとる確率変数における分散の概念を、多次元に自然に拡張したものである。

やってみる

import numpy as np
mean = [20, 20]
cov = [[5, 0], [25, 25]]
tmp = np.random.multivariate_normal(mean, cov, 3)
aaa, bbb = tmp.T

print(tmp)
print(tmp.T)
print(aaa)
print(bbb)

出力結果

[[22.00279917 18.80819949]
 [21.19539949 21.82857794]
 [18.6510704  19.32493899]]
[[22.00279917 21.19539949 18.6510704 ]
 [18.80819949 21.82857794 19.32493899]]
[22.00279917 21.19539949 18.6510704 ]
[18.80819949 21.82857794 19.32493899]

参考