Как экстраполировать одну кривую из других? - PullRequest
0 голосов
/ 15 ноября 2018

У меня есть следующий график, где вы можете увидеть 5 строк для различных значений параметра p (3%, 5%, 7%, 9%, 11%). И у меня также есть линейное приближение для каждой строки, как вы можете видеть.

Я не могу полностью понять, как предсказать график для различных значений параметра p, используя методы интерполяции и экстраполяции.

Например, мне нужно предсказать график для p = 1%, 6%, 15%

enter image description here

def linear_approximation(df, name , start=1, finish=20):
    df_res = pd.DataFrame(df)
    df_res['Linear'] = df[name]                                                
    linear_coeff = np.polyfit(np.arange(start, finish+1),df.loc[start:finish, name], 1)  
    linear_coeff = np.poly1d(linear_coeff)                                                    
    df_res.loc[start:finish, 'Linear'] = linear_coeff(np.arange(start, finish+1))   
    return df_res

df_linear = res['data']

plt.figure(figsize=(15, 9))

for counter in ['1','2','3','4','5']:
    df_linear[counter].plot(grid=True, linestyle = '--', lw = 4)
    linear_approximation(df_linear,counter, 10, 80)['Linear'].plot(grid=True, color = 'Gray', linestyle = '-', lw = 4)

plt.legend(loc='center left',bbox_to_anchor=(1, 0.5), fontsize = '17')
...