Python隨機生成多維正態分佈

2021-10-14 17:58:24 字數 1422 閱讀 3005

本文採用python庫numpy生成隨機正態分佈。其中均值和方差均使用偽隨機生成方式。

import numpy as np

#使用np.eye(2)生成單位矩陣,然後乘以乙個隨機生成得均勻分布值組成單位矩陣得值

x0 = np.random.multivariate_normal(np.random.uniform(-50

,50,2

), np.eye(2)

*np.random.uniform(8,

30,2)

,1000

)x1 = np.random.multivariate_normal(np.random.uniform(-50

,50,2

), np.eye(2)

*np.random.uniform(2,

10,2)

,1000)0

)x2 = np.random.multivariate_normal(np.random.uniform(-50

,50,2

), np.eye(2)

*np.random.uniform(5,

20,2)

,1000)0

)

#執行結果

print

(x,type

(x))[[

-15.22115145

3.83424832][

-24.63885883

-0.71833501][

-21.02391513

1.14661153].

..[-

1.49298452

48.85591815][

-1.90203174

45.53668563][

1.14156577

47.67014148]]

<

class

'numpy.ndarray'

>

#將生成得圖視覺化

import matplotlib.pyplot as plt

plt.rcparams[

'font.sans-serif']=

['simhei'

]#用來正常顯示中文標籤

plt.rcparams[

'axes.unicode_minus']=

false

#用來正常顯示負號

正態隨機分布 C 實現

高斯分布也稱為正態分佈 normal distribution 常用的成熟的生成高斯分布隨機數序列的方法由marsaglia和bray在1964年提出,c 版本如下 include include double gaussrand while s 1 s 0 x v1 sqrt 2 log s s ...

Python正態性檢驗

在對資料建模前,很多時候我們需要對資料做正態性檢驗,進而通過檢驗結果確定下一步的分析方案。下面介紹 python 中常用的幾種正態性檢驗方法 kstest 是乙個很強大的檢驗模組,除了正態性檢驗,還能檢驗 scipy.stats 中的其他資料分布型別 對於正態性檢驗,我們只需要手動設定三個引數即可 ...

基於Box Muller變換的正態隨機數生成方法

為什麼我的眼裡常含淚水?因為我有乙個演算法不會。為了節約點眼淚,今天我們就來介紹著名的box muller變換,基於這種變換,我們便可以得到乙個從均勻分布中得到正態分佈取樣的演算法,本文也會詳細解釋其中蘊含的數學原理。box muller變換最初由 george e.p.box 與 mervin e...