Це залежить від типу шуму та типу сигналу. Покажіть приклад, якщо хочете гарної відповіді. Але, сказане, загалом ви, мабуть, хочете низькочастотний фільтр сигналу. Якби я був ти, я б взяв спектр потужностей Фур'є, щоб побачити, чи є більша частина шуму високої частоти, і сигнал, про який я дбаю, здебільшого знаходиться в нижньому діапазоні. Якщо вони перетинаються, добре, це життя. Мені доведеться більше думати про речі.
Один з фільтрів низьких частот, який підходить для галасливого сигналу, у багатьох випадках - це фільтр Савіцкого-Голай. Він описаний у числових рецептах, а для Python є функція у кулінарній книзі Python Numpy. Це просто згортання з невеликим ядром. Ви вибираєте розмір вікна виходячи з ширини вершин або інших функцій, достатньо широких, щоб зменшити шум, але не ширше, ніж функції. Це може бути невеликий, скажімо, п’ять балів, або більший, як десятки, може бути, сто.
Ви також вибираєте поліноміальний порядок - зазвичай я використовую 2 або 4. Порядок 2 добре, коли вікно невелике, <10 балів або воно охоплює менше півроку або близько того (якщо ваш сигнал нагадує синус), а замовлення 4 - краще співставляти спотворені форми піку, але любить мати близько 9 і більше очок. Але багато залежить від форми та частоти шуму.
Як говорять інші в коментарях, пошук похідних, мабуть, не є найкращою стратегією, але якщо ви все одно хочете знайти похідні, фільтр Savitzky-Golay може це зробити - одночасно згладжуючи та повідомляючи про похідну замість сигналу.