问题描述
我试图通过使用import {asyncScheduler,scheduled} from "rxjs";
scheduled([1,2,3],asyncScheduler);
最小化Kullback-Leibler散度来获取双指数模型的参数。我正在使用的函数具有3个参数,但是当我使用optim
将它们传递给optim
时,会引发错误“列表对象不能被强制键入'double'””,但我什至没有使用列表。
这是我正在使用的代码:
par = par
为什么会这样?
谢谢!
解决方法
您传递给optim
的函数需要返回一个标量值,而您的kld_optim
函数则返回对integrate()
的调用结果,根据?integrate
帮助页,返回列表,而不是数字值。该列表中包含的“值”以“值”为名。因此,将您的integrate()
呼叫更改为
integrate(integrand,from_a,to_b,x = x,w = w,b = b,p = p,d = d)$value