Обычно у меня есть список 0
s и 1
s. Каждое значение в списке представляет собой образец данных за час. Таким образом, если в списке 24 0
s и 1
s, это означает, что есть 24 часа или один день. Я хочу в первый раз зафиксировать циклы данных от 0
s до 1
s обратно до 0
s в течение 24 часов (или наоборот, от 1
s до 0
s обратно до 1
s).
signal = [1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,1]
ожидаемый результат:
# D
signal = [1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0]
output = [0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0]
# ^ cycle.1:day.1 |dayline ^cycle.1:day.2
В списке вывода, когда есть 1, это означает, что 1 цикл завершен в этой позиции списка сигналов и в состоянии покоя позиции есть 0. В днях должен быть только 1 цикл, поэтому там только 1.
Я не знаю, как разбить этот список в соответствии с этим, так может ли кто-нибудь помочь?