我正在尝试计算函数的Hessian。这是函数的代码
Obj_fun=function(x)
{
l=length(x)
goal=0
lo2=as.integer(l/2)
z=lo2+1
for (i in (1:lo2))
goal=goal+data$score[i]*x[i]
for (i in (z:l))
{
goal=goal+(1-data$score[i-lo2])*x[i]
}
}
我正在使用以下代码来获取黑森州
Len=nrow(data)*2
x0=runif(Len)
hess <- hessian(func=Obj_fun, x=x0)
但是我收到的错误消息为
Error in hessian.default(func = Obj_fun, x = x0) :
Richardson method for hessian assumes a scalar valued function.
您能建议我为得到黑森州矩阵需要做哪些更改?