numpy矩阵运算randn()函数
numpy.matlib.randn()是另一个在numpy中进行矩阵运算的函数。它从均值为0、方差为1的单变量 “正态”(高斯)分布中返回一个随机值的矩阵。
语法: numpy.matlib.randn(*args)
参数 :
*args : [参数] 输出矩阵的形状。如果以N个整数给出,每个整数指定一个维度的大小。如果以元组形式给出,这个元组给出完整的形状。如果有一个以上的参数,并且第一个参数是一个元组,那么其他参数将被忽略。
返回:从标准正态分布中抽取的随机值的矩阵。
代码#1:
# Python program explaining
# numpy.matlib.randn() function
# importing matrix library from numpy
import numpy as geek
import numpy.matlib
# desired 3 x 4 random output matrix
out_mat = geek.matlib.randn((3, 4))
print ("Output matrix : ", out_mat)
输出 :
Output matrix : [[ 0.78620217 0.41624612 -0.28417131 0.1071018 ]
[ 0.77645105 0.30858858 -1.98901344 1.25977209]
[ 0.26279443 -0.41026178 -0.60834494 2.82552737]]
代码#2:
# Python program explaining
# numpy.matlib.randn() function
# importing numpy and matrix library
import numpy as geek
import numpy.matlib
# desired 1 x 5 random output matrix
out_mat = geek.matlib.randn(5)
print ("Output matrix : ", out_mat)
输出 :
Output matrix : [[ 0.34973625 0.28159132 0.72581405 -1.17511692 1.96773952]]
代码#3:
# Python program explaining
# numpy.matlib.randn() function
# importing numpy and matrix library
import numpy as geek
import numpy.matlib
# more than one argument given
out_mat = geek.matlib.randn((5, 3), 4)
print ("Output matrix : ", out_mat)
输出 :
Output matrix : [[ 0.56784957 0.82980325 1.16683558]
[-1.53444326 -0.27743273 0.65819067]
[ 0.99654573 -1.20399432 -0.25603147]
[ 1.74931585 0.58413453 1.67820029]
[-1.25643231 0.21610229 0.21694595]]
注意:对于来自的随机样本,我们可以使用sigma * geek.matlib.randn(…) + mu。
例如,制作一个3×3的矩阵,其中的样本来自
。
代码 #4 :
# Python program explaining
# numpy.matlib.randn() function
# importing numpy and matrix library
import numpy as geek
import numpy.matlib
# So, here mu = 3, sigma = 2
out_mat = 2 * geek.matlib.randn((3, 3)) + 3
print ("Output matrix : ", out_mat)
输出 :
Output matrix : [[ 4.04967121 0.26982021 2.3503067 ]
[ 5.57757131 2.40051874 -0.84588539]
[ 7.43715651 3.84004412 1.40514615]]