【问题标题】:Finding the perfect parameter by fitting the Maximum Likelihood mle通过拟合最大似然 m 找到完美参数
【发布时间】:2020-02-25 17:50:55
【问题描述】:

我想知道是否有人可以帮助我解决我的问题。因此,我希望在我的数据框中的变量上找到最适合我的函数的函数(参见下面的示例)。环顾四周,我发现了函数 mle(),我想是的,就是这样!但是我收到一条警告消息,有人可以帮我解决吗?

我仍然不确定这是否是我需要的功能...... 所以也许人们有其他的建议?重点是我想定义一个带有一个参数y = exp(-a*x)的公式,所以函数应该寻找完美的参数拟合

G <- c(1,0.86,0.72,0.56,0.33,0.09)
K <- c(0.53,1.11,1.5,2.01,3.3,5.1)
find1 <- data.frame(G,K)

library(bbmle)

functie1 <- function(a, sigma) {
  G = exp(- a * K)
  -sum(dnorm(find1, mean = G, sd = sigma, log = TRUE))
}

mle2.model <- mle2(functie1, start = list(a=1, sigma=1))

所以这是我得到的错误消息:

Error in dnorm(find1, mean = G, sd = sigma, log = TRUE) : 
 Non-numeric argument to mathematical function 

【问题讨论】:

    标签: r variables parameters curve-fitting mle


    【解决方案1】:

    我对发布的数据进行了方程搜索,但找不到适合任何具有单个参数的方程。对于具有两个参数的方程,方程“G = a * pow(K, 0.5) + Offset”似乎很好地拟合了参数 a = -6.1550168428728214E-01 和 Offset = 1.4651888116019784E+00,得到 RMSE = 0.0253 和 R -平方 = 0.993。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-11
      • 1970-01-01
      • 2021-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-12
      相关资源
      最近更新 更多