我有一个numpy的一维数组:
我想根据数组元素正负值的变化(0位于正值范围内)将其拆分为另一个二维数组。但是,原始元素的顺序应该保持不变。
期望的结果是:
import numpy as np
arr = np.array([1, 1, 3, -2, -1, 2, 0, 2, 1, 1, -3, -1, 2])
我想根据数组元素正负值的变化(0位于正值范围内)将其拆分为另一个二维数组。但是,原始元素的顺序应该保持不变。
期望的结果是:
new_arr = [[1, 1, 3], [-2, -1], [2, 0, 2, 1, 1], [-3, -1], [2]]
out = list(map(list, np.array_split(arr, np.nonzero(np.diff(arr>=0))[0]+1)))
- undefineditertools.groupby
。 - undefined