Numpy 中复制矩阵并使其扩充的方法:numpy.tile()

1. 方法

注意:import numpy as np

  • 方法名:tile
  • 功能:对 numpy 矩阵进行复制并使其扩充
  • 参数:第一个参数是要进行扩展的数据;
  • 参数:第二个参数是要扩展的维度。

2. 示例

2.1 示例1:a 是向量

  • a 是一个列向量,有 4 个元素,维度是 (4, 1)
    a = np.array([1, 2, 3, 4])
    a = a.reshape(len(a), 1)
    

在这里插入图片描述

  • 对 a 进行列扩展,复制列使其成为一个 (4, 2) 的矩阵 b
    b = np.tile(a, 2)
    

在这里插入图片描述

  • 对 a 进行行扩展,复制行使其成为一个 (8,1) 的矩阵 c
    c = np.tile(a , (2, 1))
    

在这里插入图片描述

  • 对 a 进行列扩展,复制列使其成为一个 (4, 2)的矩阵 d
    d = np.tile(a, (1, 2))
    

在这里插入图片描述

2.2 示例 2:A 是矩阵

  • A 是一个 (2,2)的矩阵
    A = np.arange(1, 5).reshape(2, 2)
    

在这里插入图片描述

  • 对 A 进行行扩展,复制 3 次,得到矩阵 B,B 是一个(6,2)的矩阵
    B = np.tile(A, (3, 1))
    

在这里插入图片描述

  • 对 A 进行列扩展,复制 2 次得到矩阵 C,C 是一个(2,4)的矩阵
    C = np.tile(A, 2)
    

在这里插入图片描述
或者是

C = np.tile(A, (1, 2))

在这里插入图片描述

3. 参考

更多详细内容,请参考 Numpy 手册:
NumPy v1.19 Manual numpy.tile
NumPy v1.19 Manual numpy.repeat

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
:19. 矩阵减法运算: 使用NumPy的subtract()函数进行矩阵减法运算,语法如下: numpy.subtract(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) 其,x1和x2是两个矩阵,out是可选的输出参数,where是可选的布尔数组参数,用于指定计算条件,dtype是可选的数据类型参数,指定输出的数据类型。 示例代码如下: import numpy as np # 创建两个矩阵 a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) # 进行矩阵减法运算 c = np.subtract(a, b) print(c) 输出结果如下: [[-4 -4] [-4 -4]] 20. 矩阵元素间乘法运算: 使用NumPy的multiply()函数进行矩阵元素间乘法运算,语法如下: numpy.multiply(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) 其,x1和x2是两个矩阵,out是可选的输出参数,where是可选的布尔数组参数,用于指定计算条件,dtype是可选的数据类型参数,指定输出的数据类型。 示例代码如下: import numpy as np # 创建两个矩阵 a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) # 进行矩阵元素间乘法运算 c = np.multiply(a, b) print(c) 输出结果如下: [[ 5 12] [21 32]] 21. 矩阵乘法运算: 使用NumPy的dot()函数进行矩阵乘法运算,语法如下: numpy.dot(a, b, out=None) 其,a和b是两个矩阵,out是可选的输出参数。 示例代码如下: import numpy as np # 创建两个矩阵 a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) # 进行矩阵乘法运算 c = np.dot(a, b) print(c) 输出结果如下: [[19 22] [43 50]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值