Я часто работаю с массивами numpy, представляющими критические времена в временном ряду. Затем я хочу перебирать диапазоны и запускать на них операции. Например:Iterate over 'zipped' диапазоны массива numpy
rngs = [0, 25, 36, 45, ...]
output = []
for left, right in zip(rngs[:-1], rngs[1:]):
throughput = do_stuff(array[left:right])...
output.append(throughput)
Есть ли менее неловкий способ сделать это?
Предполагая, что 'rngs' нерегулярны и' dostuff' может работать только на одном срезе, в то время, выглядит хорошо. Но также посмотрите на 'ufunc.reduceat' – hpaulj
Возможный дубликат [Итерировать список как пару (текущий, следующий) в Python] (http://stackoverflow.com/questions/5434891/iterate-a-list-as-pair- current-next-in-python) – Reti43
Хотя я думаю, что он хочет что-то особенное для 'numpy'; а не только список. – hpaulj