【发布时间】:2016-07-02 16:35:43
【问题描述】:
我创建了两个相同长度的排序 ndarray,并通过 vstack() 将它们连接起来。 我在下面将我的数组称为:
[[x1 y1][x2 y2][x3 y3][x4 y4]].
然而,实际上我在每个条目中都有不同的 x 值,但 y 只有几个不同的值,从 0 上升到 n。
所以我得到了这样的东西:
[[x1 0],[x2 0],[x3 0],[x4 1],[x5 1],[x6 2],[x7 2],[x8 2][x9 3][x10 3]...]
我的目标是创建一个循环来获取所有不同 y 值的第一个和最后一个 x 值。这样循环就会返回x1 和x3 (y == 0)、x4 和x5 (y == 1)、x6 和x8 (y == 2) 等等。
我目前正在为此尝试一个丑陋的解决方案,为所有不同的 y 值创建子数组,这样我就可以获取每个数组的第一个和最后一个元素来获得我需要的 y 值,但我是想知道实现这一目标的最有效或 Pythonic 方式是什么样的。
【问题讨论】:
-
向我们展示丑陋的方式;这样可以更轻松地提出改进建议。
标签: python arrays loops numpy multidimensional-array