1、数组构造

一、在numpy中生成各种分布的伪随机数

# 1、随机种子
np.random.seed(0)

# 2、产生在[0.0, 1.0)中的随机数并形成2*3*5的三维数组
np.random.rand(2, 3, 5)

# 3、产生标准正态分布随机数并形成3*5的矩阵
np.random.randn(3, 5)

# 4、产生100个均值为3,标准差为5的N(3,5)随机数
np.random.normal(3, 5, 100)

# 5、产生100个上下界分别为3和5的均匀分布随机数
np.random.uniform(3, 7, 100)

# 6、产生34个[3,30)中的随机整数
np.random.randint(3, 30, 34)

# 7、从数组X中给定概率P放回抽样随机抽取20个样本
np.random.choice(x, 20, replace=True, p=[0.1, 0.3, 0.6])

# 8、从数组X中给定概率P不放回抽样随机抽取20个样本
np.random.choice(x, 20, replace=False)

# 9、把0-9的自然数随机排列
np.random.permutation(range(10))

二、数组产生

1、np.array直接生成

x0 = [[1, 3, -5], [3, 4], 'it is a world', (2,6), {3:51, 'T':(2,1)}]
np.array(x0)

输出为:

array([list([1, 3, -5]), list([3, 4]), "it's a world", (2, 6),
       {3: 51, 'T': (2, 1)}], dtype=object)

2、等差序列np.linspace和np.arange

(1)np.linspace(起始, 终止(包含), 样本个数)

np.linspace(0, 9, 10)

输出结果:

array([0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])

(2)np.arange(起始, 终止(不包含), 步长)

np.arange(0, 9, 1)

输出结果:

array([0, 1, 2, 3, 4, 5, 6, 7, 8])

3、特殊矩阵:zeros、eye、full、empty、diag、triu、tril

(1)零矩阵:np.zeros()

np.zeros((2, 3)) # 传入元组维度的大小

输出:

array([[0., 0., 0.],
       [0., 0., 0.]])

(2) 单位矩阵:np.eye()

np.eye(3)

输出结果:

array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])

(3)np.full()

np.full((3, 3), 10) # 第一个参数是元组的维度,第二个参数是填充数值

输出结果:

array([[1, 1, 1],
       [1, 1, 1],
       [1, 1, 1]])

(4) 空矩阵 np.empty()

np.empty((2, 3)) # 产生一个2*3的空数组,里面的值都是随机值

输出结果:

array([[0., 0., 0.],
       [0., 0., 0.]])

(5) 对角矩阵 np.diag()
在这里插入图片描述
(6)上三角矩阵np.triu( )/下三角矩阵np.tril( )
在这里插入图片描述

4、 通过函数来构造矩阵

下面是产生元素为行指标(i)和列指标(j)函数矩阵

np.fromfunction(lambda i, j: i**2 + i*j, (3, 4))

输出为:

array([[ 0.,  0.,  0.,  0.],
       [ 1.,  2.,  3.,  4.],
       [ 4.,  6.,  8., 10.]])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值