【发布时间】:2018-01-17 21:41:20
【问题描述】:
我知道numpy.where 给出了条件适用的数组坐标的元组。但是如果我想要一个数组呢? 假设以下二维数组:
a=np.array([[1 1 1 1 0],
[1 1 1 0 0],
[1 0 0 0 0],
[1 0 1 1 1],
[1 0 0 1 0]])
现在我想要的只是第一次出现零,但对于每一行,即使它不存在。 Java 中的 indexOf() 之类的东西。所以输出看起来像:
array([-1,2,2,1,0])
我需要切割一个 ndarray 的片段,减少维度而不是拥有一个元组并尝试重新生成丢失的行会容易得多。
【问题讨论】:
-
所呈现的矩阵与样本输出之间是否存在关系?
-
@EugeneSh。是的,但是 OP 在行和列之间混淆了。
-
另外,示例中应该有逗号才能复制 Python 语法
-
@AntonvBR。是为了转置。第一个 column 没有零,所以 -1。接下来的两列在第 2 行中的第一个为零,依此类推。