Se hará uso de la función exponencial: \[f(x) = \lambda e^{- \lambda x}\]
con la siguiente función de verosimilitud: \[Log(L(P)) = log(\lambda ) * n - \lambda \sum_{i = 1}^{n}x\]
library(pacman)
## Warning: package 'pacman' was built under R version 4.2.2
p_load(data.table, fixest, lattice, magrittr, ggplot2, kableExtra,dplyr)
N = 500 #tamaño muestra
lambda = 5 #dato a obtener aprox
distribucion = rexp(N, lambda)
datos = data.frame(distribucion)
logLikeExp = function(l, x, n){
return (-(log(l)*n-l*sum(x)))}
x = seq(0, 50)
y = logLikeExp(x, datos, 500)
plot(x, y, type = "o", main = "Función de verosimilitud", ylab = "Log likehood lambda", xlab = "Lambda")
MLE_estimates <- optim(fn= logLikeExp,
par=c(1), # Estimación inicial
lower = c(-Inf, -Inf), # Límite inferior de los parámetros
upper = c(Inf,Inf), # Límite superior de los parámetros
hessian=TRUE, # Devuelve el Hessiano
method = "L-BFGS-B",
n = 500,
x = distribucion)
# Examinar estimaciones
MLE_par <- MLE_estimates$par
MLE_SE <- sqrt(diag(solve(MLE_estimates$hessian)))
MLE <- data.table("Lambda original" = lambda,
"------Estimación" = MLE_par,
"------Desviación estándar" = MLE_SE)
kable(MLE)
| Lambda original | ——Estimación | ——Desviación estándar |
|---|---|---|
| 5 | 4.745187 | 0.2122112 |
error = abs(lambda - MLE_par)
error
## [1] 0.2548134
log_like_graph <- function(x = distribucion, n = N){
lambda = MLE_par
logLikeLambda = n * log(lambda) - lambda * sum(x)
return(logLikeLambda)
}
log_like_graph <- Vectorize(log_like_graph)
graficoLambda <- ggplot(data = data.frame(lambda = 0), mapping = aes(lambda = lambda)) +
stat_function(fun = log_like_graph) +
xlim(-40,40) + theme_bw() +xlab("lambda") + ylab("log lik")
graficoLambda
1: Taboga, M. (2021). Exponential distribution - Maximum Likelihood Estimation. https://stat.ethz.ch/R-manual/R-devel/library/stats/html/Exponential.html
2: Singla, A. (2018). An Introductory Guide to Maximum Likelihood Estimation (with a case study in R). Lectures on probability theory and mathematical statistics. https://www.analyticsvidhya.com/blog/2018/07/introductory-guide-maximum-likelihood-estimation-case-study-r/