«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как эффективно сглаживать кривые при работе с зашумленными наборами данных?

Как эффективно сглаживать кривые при работе с зашумленными наборами данных?

Опубликовано 1 ноября 2024 г.
Просматривать:663

How to Effectively Smooth Curves when Dealing with Noisy Datasets?

Сглаживание кривых с помощью шума набора данных: практическое руководство

Сглаживание кривых для зашумленных наборов данных — распространенная задача при анализе данных. Чтобы решить эту проблему, рассмотрим набор данных с отклонением 20 % из-за шума:

import numpy as np
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)   np.random.random(100) * 0.2

В этой ситуации фильтр Савицкого-Голея является эффективным выбором. Этот фильтр работает путем подгонки полинома к окну точек данных и использования полинома для оценки значения в центре окна. Затем окно смещается вдоль данных, и процесс повторяется, в результате чего получается сглаженная кривая.

Вот как реализовать фильтр Савицкого-Голея в Python:

  1. Импортируйте необходимые библиотеки:
import numpy as np
import matplotlib.pyplot as plt
  1. Запустите фильтр Савицкого-Голея для данных:
yhat = savgol_filter(y, 51, 3) # window size 51, polynomial order 3
  1. Визуализируйте исходные данные и сглаженную кривую:
plt.plot(x, y)
plt.plot(x, yhat, color='red')
plt.show()

Результирующая кривая будет более гладкой, чем исходная, при этом сохраняя основной сигнал.

Примечание: Если у вас нет функции savgol_filter доступен, вы можете установить его с помощью следующей команды:

pip install scipy
Заявление о выпуске Эта статья перепечатана по адресу: 1729410977. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3