🔧 tool

相关软件(R代码)

```r # 手动实现MLE估计正态分布参数 x <- rnorm(100, mean = 5, sd = 2) # 真实参数mu=5, sigma=2 # 对数似然函数 log_likelihood <- function(params, data) { mu <- params[1] sigma <- params[2] n <- length(data) -n/2 * lo...

📖 定义

# 手动实现MLE估计正态分布参数
x <- rnorm(100, mean = 5, sd = 2)  # 真实参数mu=5, sigma=2
# 对数似然函数
log_likelihood <- function(params, data) {
  mu <- params[1]
  sigma <- params[2]
  n <- length(data)
  -n/2 * log(2*pi*sigma^2) - sum((data - mu)^2) / (2*sigma^2)
}
# 最大化对数似然(R中通过最小化负对数似然实现)
neg_log_lik <- function(params, data) -log_likelihood(params, data)
result <- optim(par = c(0, 1), fn = neg_log_lik, data = x, method = "L-BFGS-B",
                lower = c(-Inf, 0.01))
result$par  # MLE估计值
# 与样本均值和标准差比较
c(mean(x), sd(x))  # 注意sd使用n-1,MLE使用n
# R中直接使用最大似然估计的包
# install.packages("bbmle")
library(bbmle)

2.3.3 Logistic回归模型