У меня есть массив numpy, подобный этому [1,1,1,-1,-1,1,-1,1,1,-1,-1,-1,1,-1]
Я хотел бы найти длину самой длинной последовательной серии из 1 или -1. В примере, это должно быть 3найти длину самой длинной последовательной серии чисел
ответ
В чистом Python
>>> from itertools import groupby
>>> L = [1,1,1,-1,-1,1,-1,1,1,-1,-1,-1,1,-1]
>>> max(sum(1 for i in g) for k,g in groupby(L))
3
Не может быть проще, чем это. +1 –
Хорошее использование itertools! – jszakmeister
@jszakmeister, в любое время проблема включает в себя слово «последовательный», 'groupby()' должно быть первым, что вы о –
аналогично ответу на @AlexMartelli
>>> import numpy as np
>>> nums = np.array([1,1,1,-1-1,1,-1,1,1,-1,-1,-1,1,-1])
>>> run_ends = np.where(np.diff(nums))[0] + 1
>>> np.diff(np.hstack((0, run_ends, nums.size))).max()
3
- 1. Найти длину самой длинной подстроки
- 2. Найти длину самой длинной растущей подпоследовательности
- 3. Как найти длину самой длинной отсортированной подпоследовательности
- 4. Найти длину самой длинной последовательности в матрице
- 5. Найти длину самой длинной конечной подстроки
- 6. Поиск самой длинной последовательной последовательности символа
- 7. Получить длину самой длинной строки в массиве
- 8. Найти длину самой длинной непрерывной подпоследовательности того же характер
- 9. Найти длину самой длинной строки в столбце dataframe Pandas
- 10. Найти длину самой длинной подстроки без повторяющихся символов
- 11. Matlab: найти длину самой длинной подстроки в последовательности
- 12. Найти длину самой длинной строки в столбце в оракуле
- 13. Как найти длину самой длинной строки текстового файла в C
- 14. ArrayList: Получить длину самой длинной строки, Получить среднюю длину строки
- 15. Вычислить длину самой длинной упорядоченной подпоследовательности в массиве
- 16. Выяснить длину самой длинной записи в столбце таблицы
- 17. Как узнать длину самой длинной строки на листе
- 18. Найти позицию самой длинной повторяющейся буквы
- 19. Как найти имя самой длинной хранимой процедуры?
- 20. Длина самой длинной повторяющейся строки в длинной строке
- 21. Длина самой длинной подпоследовательности в списке целых чисел
- 22. PHP функция возвращает длину самой длинной строки аргумента
- 23. Как получить длину самой длинной записи в столбцах TDBGrid
- 24. найти начальное положение самой длинной последовательности 1-х
- 25. Индекс возврата самой длинной подстроки
- 26. Поиск самой длинной ошибки слова?
- 27. Что такое алгоритм случайных чисел с самой длинной периодичностью?
- 28. Linq, чтобы найти пару точек с самой длинной длиной?
- 29. SQL-запрос, чтобы найти длину серии значений
- 30. Есть ли один способ линии, я могу найти длину самой длинной из двух строк C#?
вы хотите сделать 'numpy' решение или чисто-питон решение в порядке ? Это тривиально, используя 'itertools.groupby' ... – Bakuriu
Итак, выход в этом случае должен быть 2 (-1-1) справа? ... ord есть только«, »отсутствует, и вы действительно хотите 3 (1,1 , 1)? – pypat
@Bakuriu все решения с чистым питоном - это бесчисленные решения. Единственное завихрение заключается в том, что иногда решения, специфичные для numpy, намного приятнее или намного быстрее. –