我想最大化关于 theta 参数的似然函数。似然函数定义为:
from scipy.optimize import minimize
def prloglik(theta,n,r):
N=theta;k=len(n)
ar1=np.sum(np.log(np.array(range(N))+1))
ar2=np.sum(n)*np.log(np.sum(n)/(k*N))
ar3=(k*N-np.sum(n))*np.log(1-(np.sum(n))/(k*N))
par=np.sum(np.log(np.array(range(N-r))+1))
return(-(ar1+ar2+ar3-par))
我用:
res=minimize(prloglik,1000,method='BFGS',args=(nn,962))
nn
numpy 数组在哪里。我得到这个错误:
TypeError: only integer arrays with one element can be converted to an index
谁能帮我?