python高斯函数拟合,python拟合曲线求方程

  python高斯函数拟合,python拟合曲线求方程

  有很多方法可以将高斯函数拟合到数据集。我经常在拟合数据时使用天文望远镜,这就是为什么我想添加这个作为额外的答案。

  我使用的一些数据集应该模拟高斯噪声:将数组作为铭牌导入

  从天文望远镜导入建模

  m=modeling.models.Gaussian1D(振幅=10,平均值=30,标准差=5)

  x=np.linspace(0,100,2000)

  数据=m(x)

  数据=数据NP。sqrt(数据)* NP。随机的。随机(x .尺寸)-0.5

  data -=data.min()

  plt.plot(x,数据)

  然后拟合它实际上非常简单,您可以指定要拟合数据的模型和拟合者:钳工=建模。试衣。levmarlsqfitter()

  模型=建模。模特。高斯1d()#根据数据你需要给出一些初始值

  fitted_model=fitter(模型,x,数据)

  并绘制:plt.plot(x,data)

  plt.plot(x,拟合_模型(十))

  不过,也可以只使用Scipy,但必须自己定义函数:从科学计算导入优化

  def高斯(x,振幅,平均值,标准差):

  返回幅度* NP。指数(-((x-均值)/4/标准偏差)* * 2)

  popt,_=optimize.curve_fit(高斯,x,数据)

  这将返回拟合的最佳参数,您可以这样绘制:plt.plot(x,data)

  plt.plot(x,gaussian(x,*popt))

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: