numpy random

np.random.seed()用法:

np.random.seed(5)
print(np.random.permutation(np.array([i for i in range(9)])))
np.random.seed(5)
print(np.random.permutation(np.array([i for i in range(9)])))


[2 4 8 7 1 0 5 6 3]
[2 4 8 7 1 0 5 6 3]


np.random.seed(5)
print(np.random.permutation(np.array([i for i in range(9)])))
np.random.seed(5)
print(np.random.permutation(np.array([i for i in range(10,19)])))

[2 4 8 7 1 0 5 6 3]
[12 14 18 17 11 10 15 16 13]

  

 np.random.choice()的用法: 

import numpy as np

# 参数意思分别 是从a 中以概率P,随机选择3个, p没有指定的时候相当于是一致的分布
a1 = np.random.choice(a=5, size=3, replace=False, p=None)
print(a1)
# 非一致的分布,会以多少的概率提出来
a2 = np.random.choice(a=5, size=3, replace=False, p=[0.2, 0.1, 0.3, 0.4, 0.0])
print(a2)
# replacement 代表的意思是抽样之后还放不放回去,如果是False的话,那么出来的三个数都不一样,如果是
# True的话, 有可能会出现重复的,因为前面的抽的放回去了。

  

 np.random.permutation()的用法:

随机排列一个序列,返回一个排列的序列

>>> np.random.permutation(10)
array([1, 7, 4, 3, 0, 9, 2, 5, 8, 6])


>>> np.random.permutation([1, 4, 9, 12, 15])
array([15,  1,  9,  4, 12])


>>> arr = np.arange(9).reshape((3, 3))
>>> np.random.permutation(arr)
array([[6, 7, 8],
       [0, 1, 2],
       [3, 4, 5]])

  

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

从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.

 

np.random.normal(loc=0.0, scale=1.0, size=None):

正态分布

 

np.random.rand()

随即生成[0,1)之间的数。

 

np.random.randn()

  • randn函数返回一个或一组样本,具有标准正态分布。
posted @ 2018-02-26 09:41  家迪的家  阅读(499)  评论(0编辑  收藏  举报