python中生成隨機數總結

2021-09-25 04:18:13 字數 1662 閱讀 7303

本文總結了常見的生成隨機數的方法。

一、使用numpy.random模組生成隨機數

1、生成標準正態分佈,均值為0,方差為1。

numpy.random.randn(d0, d1, ..., dn)

通過下面的公式可以將標準正太分布轉換為

2、生成任意引數的正態分佈

numpy.random.normal(loc=0.0, scale=1.0, size=none)

這個方法中可以指定均值loc和標準差scale。

3、生成[0,1)之間的均勻分布隨機數

numpy.random.random(size=none)

例項**如下:

# encoding:utf-8

import numpy as np

import matplotlib.pyplot as plt

# 生成符合正太分布的隨機數

mean = 5 # 均值

std = 3 # 方差

standard_normal_distribution = np.random.randn(2000)

normal_distribution = standard_normal_distribution * std + mean

gaussian_distribution = np.random.normal(loc=mean,scale=std,size=2000)

# 生成符合均勻分布的隨機數

continuous_uniform_distribution = np.random.random(2000)

plt.subplot(2,2,1)

plt.hist(standard_normal_distribution,bins=20,color='r',alpha=0.4,edgecolor='g')

plt.title("np.random.randn")

plt.subplot(2,2,2)

plt.hist(normal_distribution,bins=20,color='r',alpha=0.4,edgecolor='g')

plt.title("derived from np.random.randn")

plt.subplot(2,2,3)

plt.hist(gaussian_distribution,bins=20,color='r',alpha=0.4,edgecolor='g')

plt.title("np.random.normal")

plt.subplot(2,2,4)

plt.hist(continuous_uniform_distribution,bins=20,color='r',alpha=0.4,edgecolor='g')

plt.title("np.random.random")

plt.show()

結果圖如下:

python 中生成隨機數(random)

如果你對在python生成隨機數與random模組中最常用的幾個函式的關係與不懂之處,下面的文章就是對python生成隨機數與random模組中最常用的幾個函式的關係,希望你會有所收穫,以下就是這篇文章的介紹。random.random 用於生成 用於生成乙個指定範圍內的隨機符點數,兩個引數其中乙個...

在Python中生成隨機數

python中利用random獲取乙個0到1的隨機浮點數 a random.random print a python中利用random獲取一定範圍內的 10到20 的隨機浮點數 b random.uniform 10,20 print b python利用random獲取一定範圍內 10到20 的...

MATLAB中生成隨機數方法總結

好久沒用matlab了,今天在利用matlab進行資料處理時,突然發現自己忘記了該如何產生自己需要的隨機數形式,於是又查了一通資料。現對其進行乙個簡單的總結,供自己和大家以後參考 1.randi 產生均勻分布的偽隨機整數 產生乙個1至10之間的隨機矩陣,大小為2x5 s1 randi 10,2,5 ...