如何将向量插入到NumPy矩阵的指定行(第四行)?
NumPy矩阵插入向量到指定行的解决方法
要将向量插入到矩阵的第四行,不用局限于vstack,有两种简洁的实现方式:
方法一:使用np.insert函数
np.insert支持指定插入位置(按0索引规则),直接实现行插入操作:
import numpy as np # 定义原4x5矩阵 A = np.reshape(range(1,21),(4,5)) # 待插入的目标向量 new_row = np.array([10,3,5,2,6]) # 插入到索引3的位置(对应第四行),axis=0表示对行进行操作 B = np.insert(A, 3, new_row, axis=0) print(B)
方法二:切片拼接
通过切片拆分原矩阵,再用vstack拼接各部分:
import numpy as np A = np.reshape(range(1,21),(4,5)) new_row = np.array([10,3,5,2,6]) # 按顺序拼接原矩阵前3行、新向量、原矩阵第4行 B = np.vstack([A[:3], new_row, A[3:]]) print(B)
两种方法运行后都会得到符合期望的5x5矩阵,最后一行为[16 17 18 19 20]。
内容的提问来源于stack exchange,提问作者camaya3
相关产品推荐
相关产品推荐

