Я пытаюсь установить сплайн на мои данные, имеющие 5700 выборок данных (с повторяющимися значениями х, то есть х: горизонтальная ось), используя функцию «interp1d» из пакета «scipy» в python. Я попробовал сплайн более низкого порядка (k = 1) и квадратичный сплайн (k = 2), кубический сплайн (k = 3). И я шокирован, когда наблюдаю странный отклик «сплайнов» на мои данные. Хотя сплайн в «k = 1» имеет какой-то смысл, но смехотворно перерабатывает его (квадратичный и кубический сплайн выполняются слишком плохо). В моем первом испытании я использование полиномиального фитинга для соответствия данным и результаты были обнадеживающими. Я ожидал, что сплайн-фитинг даст результаты лучше, чем то, что я получил при полиномиальной установке. This is the result with splines. Пожалуйста, предложите мне, где я ошибаюсь?Привязка сплайна к данным с дублированием x с использованием scipy (Python)
ответ
Если набор данных имеет отдельные однозначно оцененные точки для каждого значения X, эффективное взвешивание для каждой точки данных равно 1,0. Если, однако, одна точка данных в этом наборе данных удваивается или копируется, как только одна точка данных имеет эффективный вес 2.0.
Если все точки данных в наборе данных скопированы один раз, каждая точка имеет тот же эффективный вес 2.0, то есть все точки данных будут иметь одинаковый вес.
Если некоторые точки данных в этом наборе данных имеют уникальные значения X, а некоторые появляются более одного раза, один подход заключается в том, чтобы усреднять значения Y для «дублированных» точек данных, чтобы каждая точка снова имела эффективный вес 1.0. Иногда это может работать в конкретном случае, который я описываю.
- 1. Python Scipy для 2D экстраполированной функции сплайна?
- 2. Производные сплайна: `scipy splev`
- 3. с использованием сплайна и сплайна
- 4. Оценка производной сплайна с использованием splev в SciPy
- 5. интерполяция с использованием кубического сплайна
- 6. Кривая фитинга в Python с использованием scipy
- 7. Интерполирование данных с использованием SciPy
- 8. Degrafa Безье сплайна привязка данные к строке
- 9. Прогнозирование с использованием натурального сплайна
- 10. dataContext привязка к данным
- 11. Доступ к данным Salesforce с использованием python
- 12. Доступ к данным Hive с использованием Python
- 13. Scipy: подгонка сплайна к пользовательской функции вместо точек
- 14. Проблемы с дублированием Python MYSQL
- 15. Ограниченный сплайн Fit с использованием Scipy в Python
- 16. с использованием функции curve_fit из scipy python
- 17. Сведение к минимуму функции с использованием scipy
- 18. Глобальная привязка клавиш на X с использованием Python gtk3
- 19. Функция сплайна Matlab в python
- 20. Доступ к данным файла JSON с использованием запрограммированного запроса - Python
- 21. Интеграция массива с использованием scipy
- 22. Доступ к данным JSON с использованием строки
- 23. Интеграция с использованием scipy odeint
- 24. привязка данных привязки к данным не работает
- 25. knockout foreach привязка данных к сгруппированным данным
- 26. Неправильная посадка с использованием scipy curve_fit
- 27. Установка данных с использованием UnivariateSpline в scipy python
- 28. Доступ к данным в кусках с использованием Python Pandas
- 29. Доступ к музыкальным данным в формате MP3 с использованием Python
- 30. доступ к анализируемым данным html в python с использованием списков
Спасибо Джеймс, я удалил дубликаты с их средним числом. и теперь сплайн на k = 1 такой же, как k = 2, такой же, как k = 3. Должен ли я ожидать, что производительность «Квадратичного», «Кубического» сплайна лучше, чем «Линейный»? или есть еще одна проблема? –
Я предлагаю несколько простых тестов, которые легко запрограммированы. Извлеките меньший набор данных со значениями для min (x), max (x), mean (x) плюс несколько других точек, которые должны работать как ожидалось. Затем попробуйте набор данных с каждой 100-й точкой данных, затем каждые 10, а затем с каждой другой точкой данных. Анализ заключается в определении влияния количества точек данных на результаты. Это должно занять очень мало времени для выполнения и должно быть информативным. Мое подозрение, глядя на ваш график, заключается в том, что сплайны работают правильно и сглаживают шум в данных. –