numpy中的np.random.rand、np.random.randn、np.random.randint、np.random.uniform等用法

随机数生成方法

1、np.random.rand(d0, d1, …, dn)
np.random.rand(d0, d1, …, dn):生成一个指定形状的[0, 1)之间均匀分布的随机数数组。参数d0, d1, …, dn指定了生成的随机数数组的维度。

import numpy as np

random_array = np.random.rand(3, 2)  # 生成一个3行2列的随机数数组
print(random_array)

2、np.random.randn(d0, d1, …, dn)
np.random.randn(d0, d1, …, dn):生成一个指定形状的**标准正态分布(**平均值为0,标准差为1)的随机数数组。参数d0, d1, …, dn指定了生成的随机数数组的维度

import numpy as np

random_array = np.random.randn(3, 2)  # 生成一个3行2列的标准正态分布随机数数组
print(random_array)

3、np.random.randint(low, high=None, size=None, dtype=int)

np.random.randint(low, high=None, size=None, dtype=int):生成一个指定形状的随机整数数组。参数low和high指定了随机数的范围,size指定了生成的随机数的形状,dtype指定了数组的数据类型。

import numpy as np

random_int = np.random.randint(1, 10, size=(3, 2))  # 生成一个3行2列的随机整数数组,范围为[1, 10)
print(random_int)

4、np.random.random_sample(size=None)
np.random.random_sample(size=None):生成一个指定形状的**[0, 1)之间均匀分布**的随机数数组。参数size指定了生成的随机数的形状

import numpy as np

random_array = np.random.random_sample(size=(3, 2))  # 生成一个3行2列的随机数数组
print(random_array)

5、np.random.random(size=None)
np.random.random(size=None):与np.random.random_sample方法相同,生成一个指定形状的[0, 1)之间均匀分布的随机数数组。参数size指定了生成的随机数的形状。

import numpy as np

random_array = np.random.random(size=(3, 2))  # 生成一个3行2列的随机数数组
print(random_array)

6、np.random.choice(a, size=None, replace=True, p=None)

np.random.choice(a, size=None, replace=True, p=None):从给定的数组或整数中随机选择元素。参数a可以是一个数组或整数,size指定了生成的随机数的形状,replace指定是否可以重复选择元素,p是每个元素被选择的概率(默认情况下是均匀分布)

import numpy as np

choices = np.array(['A', 'B', 'C', 'D', 'E'])
random_choice = np.random.choice(choices, size=3, replace=False, p=[0.1, 0.3, 0.2, 0.15, 0.25])
print(random_choice)

分布相关方法

1、np.random.normal(loc=0.0, scale=1.0, size=None)
np.random.normal(loc=0.0, scale=1.0, size=None):生成一个指定形状的服从正态分布(高斯分布)的随机数数组。参数loc指定了均值,scale指定了标准差,size指定了生成的随机数的形状

import numpy as np

random_normal = np.random.normal(loc=0.0, scale=1.0, size=(3, 2))  # 生成一个3行2列的正态分布随机数数组
print(random_normal)

2、np.random.uniform(low=0.0, high=1.0, size=None)

np.random.uniform(low=0.0, high=1.0, size=None):生成一个指定形状的在给定范围内均匀分布的随机数数组。参数low和high分别指定了随机数的范围,size指定了生成的随机数的形状。

import numpy as np

random_uniform = np.random.uniform(low=0.0, high=1.0, size=(3, 2))  # 生成一个3行2列的均匀分布随机数数组
print(random_uniform)

3、np.random.binomial(n, p, size=None)
np.random.binomial(n, p, size=None):生成一个指定形状的二项分布随机数数组。参数n指定了试验的次数,p指定了每次试验成功的概率,size指定了生成的随机数的形状

import numpy as np

random_binomial = np.random.binomial(n=10, p=0.5, size=(3, 2))  # 生成一个3行2列的二项分布随机数数组,每次试验10次,成功概率为0.5
print(random_binomial)

4、np.random.poisson(lam=1.0, size=None)

np.random.poisson(lam=1.0, size=None):生成一个指定形状的泊松分布随机数数组。参数lam指定了平均发生率,size指定了生成的随机数的形状。

import numpy as np

random_poisson = np.random.poisson(lam=2.0, size=(3, 2))  # 生成一个3行2列的泊松分布随机数数组,平均发生率为2.0
print(random_poisson)

随机数序列操作方法

1、np.random.shuffle(x)
np.random.shuffle(x):对数组进行原地随机排列,即打乱数组中元素的顺序。此函数会修改原始数组。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
np.random.shuffle(arr)  # 原地打乱数组顺序
print(arr)

2、np.random.permutation(x)
np.random.permutation(x):返回一个随机排列数组的副本,不会修改原始数组。

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
permuted_arr = np.random.permutation(arr)  # 返回打乱顺序后的新数组
print(permuted_arr)

3、np.random.seed(seed=None)
np.random.seed(seed=None):设置随机数生成器的种子。种子是一个整数,用于确定随机数生成器的起始状态。使用相同的种子将得到相同的随机数序列。

import numpy as np

np.random.seed(123)  # 设置随机数生成器的种子为123
random_array = np.random.rand(3, 2)  # 生成一个3行2列的随机数数组
print(random_array)

你可能感兴趣的:(数据分析,numpy,python,机器学习)