在numpy中找到所有间隔

我有形状的xy numpy数组(2,600)

array([[0. , 0.01 ], [0.02 , 0.03 ], [0.04 , 0.05 ], ..., [1.21943121, 1.14205236], [1.07493206, 1.01916783], [0.97570154, 0.94530397]])

我需要找到第二维值小于零的所有间隔。将它们标记为+,并从第一个维度开始使用索引进行打印。

输出示例:

[0.00 0.04] + [0.04 0.08] - [0.08 0.10] +

如果您能帮助我,我将不胜感激!

评论
  • isunt
    isunt 回复

    这将滤除第二个值小于0的间隔。

    filter = [i for i in arr if i[1] < 0]

    如果您需要索引,

    ind = []
    for i in range(len(arr)):
     if arr[i][1] < 0:
      ind.append(i)
    

    在Numpy中,这很简单:

    np.where(arr[:,1] < 0)

    这将为您提供索引。