Python: Cubic Spline Regression for a time series data

戏子无情 提交于 2019-12-13 23:27:29

问题


I have the data as shown below. I want to find a CUBIC SPLINE curve that fits the entire data set (link to sample data).

Things I've tried so far:

  1. I've gone through scipy's Cubic Spline Functions, but all of them are only able to give results at a single time only, whereas I want a single curve for the entire time range.

  2. I plotted a graph by taking an average of the spline coefficients generated by scipy.interpolate.splrep for a 4 number of knots, but the results were not good and didn't solve my purpose.

Things that can help me:

  1. An idea about how to optimize the number and position of knots for a better fit

  2. If not that, then if someone can help me find the exact polynomial coefficients for the Cubic Splines for a given number of knots.

  3. If someone can suggest a complete way to solve this problem.


回答1:


I made a 3D scatterplot of the data, converting the timestamps to "elapsed time in seconds" from the first timestamp, the image is below. It appears to me that the data has a sort of 3D equivalent of an outlier, here shown as an entire line of data that is considerably below most of the other data. This will make creating a 3D surface fit of any kind difficult.



来源:https://stackoverflow.com/questions/56421854/python-cubic-spline-regression-for-a-time-series-data

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!