Мне нужно найти интерполяцию между двумя наборами точек X,Y
, такую, что:
X = [2011, 2012, 2013, 2014, 2015, 2016, 2017]
Y = [0.947079910779078, 0.958840491330058, 0.948653507807658, .94687561871641, 0.94732364567882, 0.953963141055096, 0.943468711524127]
Я попытался найти интерполяцию через CubicSpline
F_spline = scipy.interpolate.CubicSpline(X, Y, extrapolate='periodic'))
Но если я пересекаю-check, я получаю,
In [98]: F_spline_val = [F_spline(year) for year in X]
Out[98]: [array(0.94707991),
array(0.95884049),
array(0.94865351),
array(0.94687562),
array(0.94732365),
array(0.95396314),
array(0.94707991)]
Обратите внимание, что последнее значение, рассчитанное для 2017
, равно 0.94707991
, тогда как в исходной переменной значение для 2017
было 0.943468711524127
.Что явно неточно.Что мне здесь не хватает?Почему существует неоднозначное значение для 2017
?