Сложность сглаживания двоичного сигнала в Python ⇐ Python
Сложность сглаживания двоичного сигнала в Python
У меня есть двоичный сигнал, который я хочу сгладить в Python следующим образом:
Предположим, у меня есть 1,1,1,1,0,1,0,0,0, я ожидаю 1,1,1,1,1,1,0,0,0.
Я попробовал это:
def Smooth_binary_signal(label_series, window_size=5): Smoothed_result = label_series.rolling(window=window_size, center=True, min_ periods=1).apply(lambda x: pd.Series(x).mode().iloc[0], raw=True) вернуть сглаженный_результат который, к сожалению, возвращает 1,1,1,1,1,0,0,0,0, а это не то, что я ожидал.
Есть идеи? Я боролся с этим часами... Обратите внимание, что сглаживание должно применяться к последовательностям нулей, то есть 0,0,0,1,0,0,0,0 также должно быть сглажено.
Кроме того, сглаживание должно быть «надежным» в том смысле, что выходные данные для 1,1,1,1,0,0,1,1,1,1,0,0,0,0,0, 0 должно быть 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0.
Он также должен должным образом обрабатывать крайние точки вектора.
Заранее спасибо за помощь!
У меня есть двоичный сигнал, который я хочу сгладить в Python следующим образом:
Предположим, у меня есть 1,1,1,1,0,1,0,0,0, я ожидаю 1,1,1,1,1,1,0,0,0.
Я попробовал это:
def Smooth_binary_signal(label_series, window_size=5): Smoothed_result = label_series.rolling(window=window_size, center=True, min_ periods=1).apply(lambda x: pd.Series(x).mode().iloc[0], raw=True) вернуть сглаженный_результат который, к сожалению, возвращает 1,1,1,1,1,0,0,0,0, а это не то, что я ожидал.
Есть идеи? Я боролся с этим часами... Обратите внимание, что сглаживание должно применяться к последовательностям нулей, то есть 0,0,0,1,0,0,0,0 также должно быть сглажено.
Кроме того, сглаживание должно быть «надежным» в том смысле, что выходные данные для 1,1,1,1,0,0,1,1,1,1,0,0,0,0,0, 0 должно быть 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0.
Он также должен должным образом обрабатывать крайние точки вектора.
Заранее спасибо за помощь!
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение