wwfvfdvfdv 2022-09-06 10:21 采纳率: 100%
浏览 22
已结题

曲线拟合 为什么拟合效果不好

为什么拟合效果不好

from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

def func(x,a, b, c, d):
return ((-1)a(b**2)np.exp((-2)bx+2c))/(1+np.exp((-1)bx+c))**2
if name=='main':
data=pd.read_excel('C:/Users/admin/XX LDPM-and-GRM-main/1生长曲线.xlsx')
xdata=np.array(data['1Time'])
ydata =np.array(data['growth'])
#画出真实数据
plt.plot(xdata,ydata,'b-')

#指数函数拟合
popt, pcov = curve_fit(func, xdata, ydata,bounds=(-8, [-0.5,-0.15, 2,100]))#popt数组中,三个值分别是待求参数a,b,c
#预测值
y_pred = [func(i, popt[0],popt[1],popt[2],popt[3]) for i in xdata]
#画图
plt.plot(xdata,y_pred,'r--')
print(popt)

#输出R方
from sklearn.metrics import r2_score
r2 = r2_score(ydata , y_pred )
print('指数函数拟合R方为:',r2)
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-06 12:01
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月26日
  • 已采纳回答 11月18日
  • 创建了问题 9月6日