Я хочу создавать куски из массива при определенных условиях.Допустим, я хочу, чтобы все чанки не были нулевыми.
array = np.random.randint(2, size=10)
# array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0])
out = chunks(array)
# array([[0,[1]],[4,[1, 1]],[8,[1]])
Теперь я знаю, что первый чанк начинает индекс 0 и содержит [1]
0: 0 -> [1]
1: 4 -> [1,1]
2: 8 -> [1]
Это не обязательноПохоже на это, но я не знал ничего лучше.До сих пор я сделал это с помощью петель.Но каждый раз, когда я просматриваю свой код, меня это угнетает:).
Есть ли лучший способ (магия Numpy)?