首页 > 解决方案 > 用从一个索引到另一个索引的值填充 numpy 矩阵

问题描述

我的问题是关于用从一个索引到另一个索引的值填充一个 numpy 矩阵。

例如我有这个矩阵:

> mat = np.zeros((0,5))

> mat
  0 0 0 0 0
  0 0 0 0 0
  0 0 0 0 0
  0 0 0 0 0
  0 0 0 0 0

例如,假设我想在第一列的第 1 行到第 3 行填充 mat 值:1 所以它看起来像这样:

> mat
  0 0 0 0 0
  1 0 0 0 0
  1 0 0 0 0
  1 0 0 0 0
  0 0 0 0 0

这是我尝试过的,但这里 1 应用于所有列而不是一列:

mat[1:3][1]=1

这里有什么问题?

标签: pythonarraysnumpy

解决方案


有两个问题:

首先,您没有创建所需的矩阵。np.zeros((0,5))不管用。你应该试试mat = np.zeros((5,5))

另一个问题是访问创建的矩阵。要访问从 1 到 3 的行的第 0 个元素,您需要调用:

mat[1:4,0]=1

推荐阅读