Как выполнить апроксимацию dataframe
Как выполнить апроксимацию функции? Есть пример в датафрейме. Можно перевести в список. Кто сталкивался.
Файл https://dropmefiles.com/K96n8
function
1 240.9
2 241.18
3 241.166
4 241.2
5 241.47
6 241.165
7 241.3
8 241.38
9 241.255
10 241.17
11 241.1
12 241.1
13 241.17
14 240.95
15 240.48
16 240.69
...
Пример
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Даже не знаю чем тут можно аппроксимировать, ибо даже полиномы Чебышева большой степени как-то не очень себя ведут, когда их степень уже приближается к количеству точек по которым идёт аппроксимация. Но может вас это и устроит.
import pandas as pd
import seaborn as sns
import matplotlib.pylab as plt
from numpy.polynomial.chebyshev import Chebyshev
df = pd.read_csv('p.csv')
df.columns = ['x','y']
plt.figure(figsize=(10,7));
for i in [2,4,8,16]:
c = Chebyshev.fit(df.x, df.y, i)
df[f'y{i}'] = c(df.x)
sns.lineplot(data=df.drop(columns='x'));

