fminsearch 在单个变量上
fminsearch on a single variable
使用 R 在 fminsearch 上的帮助页面示例作为起点:
# Rosenbrock function
rosena <- function(x, a) 100*(x[2]-x[1]^2)^2 + (a-x[1])^2 # min: (a, a^2)
fminsearch(rosena, c(-1.2, 1), a = sqrt(2))
# x = (1.414214 2.000010) , fval = 1.239435e-11
我想评估这样的东西,但只有一个变量,例如:
rosena <- function(x, a) 100*(x[1]-x[1]^2)^2 + (a-x[1])^2
但是当我运行
fminsearch(rosena, c(1), a = sqrt(2))
它给出了错误:X[2:d1, ] 中的错误:维数不正确
fminsearch 似乎想要一个长度大于或等于 2 的向量,但不少于此,但是对于这个例子,向量需要长度 1
注意:fminsearch 在“pracma”包中
这看起来像是 pracma
包中的错误。
anms
函数正在下标上删除维度,相关摘录:
d <- length(x0) # i.e. 1
d1 <- d + 1 # i.e. 2
...
X <- matrix(0, nrow = d1, ncol = d)
...
X <- X[o, ] # could put drop = FALSE here
我认为你应该 post 与包的作者联系。
使用 R 在 fminsearch 上的帮助页面示例作为起点:
# Rosenbrock function
rosena <- function(x, a) 100*(x[2]-x[1]^2)^2 + (a-x[1])^2 # min: (a, a^2)
fminsearch(rosena, c(-1.2, 1), a = sqrt(2))
# x = (1.414214 2.000010) , fval = 1.239435e-11
我想评估这样的东西,但只有一个变量,例如:
rosena <- function(x, a) 100*(x[1]-x[1]^2)^2 + (a-x[1])^2
但是当我运行
fminsearch(rosena, c(1), a = sqrt(2))
它给出了错误:X[2:d1, ] 中的错误:维数不正确
fminsearch 似乎想要一个长度大于或等于 2 的向量,但不少于此,但是对于这个例子,向量需要长度 1
注意:fminsearch 在“pracma”包中
这看起来像是 pracma
包中的错误。
anms
函数正在下标上删除维度,相关摘录:
d <- length(x0) # i.e. 1
d1 <- d + 1 # i.e. 2
...
X <- matrix(0, nrow = d1, ncol = d)
...
X <- X[o, ] # could put drop = FALSE here
我认为你应该 post 与包的作者联系。