Сплайн-интерполяция Scipy за пределами области точек данных ⇐ Python
Сплайн-интерполяция Scipy за пределами области точек данных
Я помещаю 2D-точки на 1D-ось, используя scipy.interpolate.bisplrep. В целом это работает лучше, чем полиномиальная интерполяция, но за пределами точек, используемых для аппроксимации, она дает ограниченные значения. Я не могу найти что-то вроде fill_value="extrapolate", которое можно было бы использовать с interp1d.
Поскольку сплайны представляют собой кусочные полиномы, я подумал, что можно использовать коэффициенты ближайшего полинома, но не знаю, как это сделать.
xy = [[0, 0], [0, 1], [1, 0], [1, 1], [2, 2], [ 0, 2], [2, 0], [2, 1], [0,1, 0]] x, y = кортеж(список(zip(*xy))) z = [0, 1, 1, 1,1, 3, 2, 2, 3, 0,1] сплайн = interpolate.bisplrep(x, y, z, kx=2, ky=2) print(interpolate.bisplev([0], [0], spline)) # близко к 0, как и ожидалось print(interpolate.bisplev([1], [1], spline)) # 1.1 как и ожидалось print(interpolate.bisplev([2], [2], spline)) # 3, как и ожидалось print(interpolate.bisplev([3], [3], spline)) # 3, но должно возвращать гораздо больше
Я помещаю 2D-точки на 1D-ось, используя scipy.interpolate.bisplrep. В целом это работает лучше, чем полиномиальная интерполяция, но за пределами точек, используемых для аппроксимации, она дает ограниченные значения. Я не могу найти что-то вроде fill_value="extrapolate", которое можно было бы использовать с interp1d.
Поскольку сплайны представляют собой кусочные полиномы, я подумал, что можно использовать коэффициенты ближайшего полинома, но не знаю, как это сделать.
xy = [[0, 0], [0, 1], [1, 0], [1, 1], [2, 2], [ 0, 2], [2, 0], [2, 1], [0,1, 0]] x, y = кортеж(список(zip(*xy))) z = [0, 1, 1, 1,1, 3, 2, 2, 3, 0,1] сплайн = interpolate.bisplrep(x, y, z, kx=2, ky=2) print(interpolate.bisplev([0], [0], spline)) # близко к 0, как и ожидалось print(interpolate.bisplev([1], [1], spline)) # 1.1 как и ожидалось print(interpolate.bisplev([2], [2], spline)) # 3, как и ожидалось print(interpolate.bisplev([3], [3], spline)) # 3, но должно возвращать гораздо больше
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение