Python 负似然函数

Python 负似然函数,python,pandas,dataframe,statistics,log-likelihood,Python,Pandas,Dataframe,Statistics,Log Likelihood,我试图最大化一个似是而非的函数,因为我用python编写了-2log(L),它似乎适用于一组数据,但当用另一组数据尝试时,我得到了一些我不应该得到的负值。 #这是我的职责 def vraissemblance(D): result=0 for i in range(n): result += (parallax.values[i] - 1/D)**2/(si

我试图最大化一个似是而非的函数,因为我用python编写了-2log(L),它似乎适用于一组数据,但当用另一组数据尝试时,我得到了一些我不应该得到的负值。 #这是我的职责

def vraissemblance(D):                                                 
    result=0
    
    for i in range(n):
        result += (parallax.values[i] - 1/D)**2/(sigma.values[i]**2)*math.log10(math.e) + 2*math.log10(sigma.values[i])
    F = result + n*math.log10(2*math.pi)
    return F
我用这个来绘制它,得到了0.6到0.8之间的负值 这是介于0.6和0.8之间的曲线图

知道为什么会这样吗(知道在求和值之前,它们是正数,如果我求和它们,就会得到一个负数)

D=0.05
y = []
x = []
while D <= 1.5:
    y.append(vraissemblance(D))
    x.append(D)
    D += 0.001

f=[]
D=0.74
for i in range (204):
    f.append((parallax.values[i] - 1/D)**2/(sigma.values[i]**2)*math.log10(math.e) + 2*math.log10(sigma.values[i]) + n*math.log10(2*math.pi))