时间紧,随便写一点了!
np.random.binomial(n, p, size)
np.random.poisson(lam, size)
x = np.random.hypergeometric(ngood=7, nbad=13, nsample=12, size=size)
连续型随机变量:均匀分布。有三个函数:
#numpy.random.uniform(low=0.0, high=1.0, size=None)在[low,high)范围内,创建大小为size的均匀分布的随机数
#numpy.random.rand(d0, d1, …, dn),为uniform()的特列,可以得到[0,1)之间的均匀分布的随机数,参数是指定形状
#numpy.random.randint(low, high=None, size=None, dtype=‘l’)作为uniform的另一特例,可以得到[low,high)之间均匀分布的随机整数。若high不为None时,取[low,high)之间随机整数,否则取值[0,low)之间随机整数。
标准正态分布:np.random.randn()
正态分布:np.random.normal(mu, sigma, size)
指数分布:np.random.exponential(lam, size)
随机从序列中获取元素
numpy.random.choice(a, size=None, replace=True, p=None) Generates a random sample from a given 1-D array.
对数据集进行洗牌操作
数据一般都是按照采集顺序排列的,但是在机器学习中很多算法都要求数据之间相互独立,所以需要先对数据集进行洗牌操作。
numpy.random.shuffle(x) Modify a sequence in-place by shuffling its contents.
permutation()函数的作用与shuffle()函数相同,可以打乱第0轴的数据,但是它不会改变原来的数组。
练习题1:创建一个形为5×3的二维数组,以包含5到10之间的随机数。
print(np.random.uniform(5,10,size=(5,3)))
# [[8.65495635 8.15243984 5.10578584]
# [5.11714161 6.29821034 9.81586385]
# [7.46608764 9.31864371 9.56433724]
# [8.10792598 7.59438993 7.17992252]
# [6.3339124 7.33874098 8.01023163]]
生成相应的数据
【知识点:随机抽样】
创建分别具有5000个数据的训练集(xi,y)和测试集(xi,y),其中xi在间隔(-10,10)上均匀随机分布。为了使回归问题“真实”,大的均匀噪声分布在[-0.2,0.2]已添加到所有训练样本中,同时测试数据保持无噪声。
没完全画出来…
x = np.random.uniform(-10,10,size=5000)
y= np.sin(x) / x
z = y + np.random.uniform(-0.2,0.2)
plt.scatter(x,z)
plt.show()