【发布时间】:2014-04-27 15:12:28
【问题描述】:
我正在尝试使用 minuit.Minuit 函数将高斯拟合到一些简单的数据,但它不会改变我的任何参数。如果有人能提供帮助,我将不胜感激。
import numpy as np
import minuit
xCurve = np.array([0,1,2,3,4,5,6,7,8,9])
yCurve = np.array([0,1,2,3,4,5,4,3,2,1])
def Gaus(a,b,c):
return a*np.exp(-((xCurve-b)**2)/(2*c**2))
m = minuit.Minuit(Gaus,a=4.5,b=5,c=0.4)
m.printMode=1
m.migrad()
m.printMode=0
m.values()
a = m.values['a']
b = m.values['b']
c = m.values['c']
d = m.values['d']
print a
print b
print c
print d
它吐出一个错误: minuit.MinuitError:协方差不是正定的。
【问题讨论】:
标签: python curve-fitting gaussian