R Markdown
# Limpando Environment do R
rm(list = ls())
# Carregando pacotes via Pacman
library(pacman)
pacman::p_load(
"tidyverse",
"readxl",
"lubridate",
"stringr",
"janitor",
"arsenal",
"diffdf",
"knitr",
"kableExtra",
"RQuantLib",
"ggpubr",
"splines",
"stats",
"VGAM",
"stats4")
#Número de Repetições
Rp<-10000
#Tamanho da amostra padrão
sz<- 1000
#Número do grupo
K <- 9
#Amostras
n1<- K*1000
n2<- K*100
n3<- K*10
n4<- K+5
#Matrizes de resultado
TT<-matrix(0,ncol=12,nrow=Rp) # estimates matrix
TS<-matrix(0,ncol=12,nrow=Rp) # Std Err. matrix
############################################################################## QUESTÃO 3
for(i in 1:Rp) {
Y<-rexp(sz,rate=2) # Exponencial
X<-exp(Y) # Pareto com par=2
#Método de Momentos
#MM estimates n1
TT[i,1]<-mean(X)/(mean(X)-1)
TS[i,1]<-( ((TT[i,1]+1)^2 *TT[i,1])/(TT[i,1]+2) )/sz
#MM estimates n2
TT[i,2]<-mean(X[c(1:n2)])/(mean(X[c(1:n2)])-1)
TS[i,2]<-( ((TT[i,2]+1)^2 *TT[i,2])/(TT[i,2]+2) )/n2
#MM estimates n3
TT[i,3]<-mean(X[c(1:n3)])/(mean(X[c(1:n3)])-1)
TS[i,3]<-( ((TT[i,3]+1)^2 *TT[i,3])/(TT[i,3]+2) )/n3
#MM estimates n4
TT[i,4]<-mean(X[c(1:n4)])/(mean(X[c(1:n4)])-1)
TS[i,4]<-( ((TT[i,4]+1)^2 *TT[i,4])/(TT[i,4]+2) )/n4
#Máxima Verossimilhança
#ML estimates n1
TT[i,5]<-1/mean(Y)
TS[i,5]<-TT[i,5]^2/sz
#ML estimates n2
TT[i,6]<-1/mean(Y[c(1:n2)])
TS[i,6]<-TT[i,6]^2/(n2)
#ML estimates n3
TT[i,7]<-1/mean(Y[c(1:n3)])
TS[i,7]<-TT[i,7]^2/(n3)
#ML estimates n4
TT[i,8]<-1/mean(Y[c(1:n4)])
TS[i,8]<-TT[i,8]^2/(n4)
#Mediana
#ME estimates n1
TT[i,9]<-log(2)/log(median(X))
TS[i,9]<-(1/log(median(X))^2) * var(log(X))
#ME estimates n2
TT[i,10]<-log(2)/log(median(X[c(1:n2)]))
TS[i,10]<-(1/log(median(X[c(1:n2)]))^2) * var(log(X[c(1:n2)]))
#ME estimates n3
TT[i,11]<-log(2)/log(median(X[c(1:n3)]))
TS[i,11]<-(1/log(median(X[c(1:n3)]))^2) * var(log(X[c(1:n3)]))
#ME estimates n4
TT[i,12]<-log(2)/log(median(X[c(1:n4)]))
TS[i,12]<-(1/log(median(X[c(1:n4)]))^2) * var(log(X[c(1:n4)]))
}
############################################################################## QUESTÃO 4
############## I)
dTT1 <- density(TT[,1])
dTT2 <- density(TT[,2])
dTT3 <- density(TT[,3])
dTT4 <- density(TT[,4])
dTT5 <- density(TT[,5])
dTT6 <- density(TT[,6])
dTT7 <- density(TT[,7])
dTT8 <- density(TT[,8])
dTT9 <- density(TT[,9])
dTT10 <- density(TT[,10])
dTT11 <- density(TT[,11])
dTT12 <- density(TT[,12])
#Plotando os Gráficos - amostra n5
plot(dTT1, xlim = c(1,3), lty = 1, lwd = 2, main = " ", xlab = " ", ylab = " ")
lines(dTT5, lty = 5, lwd = 2)
lines(dTT9, lty = 9, lwd = 2)
legend("topright", legend = c("MM", "MV", "ME"), lty = 1:3, lwd = 2)

#Plotando os Gráficos - amostra n10
plot(dTT2, xlim = c(1,3), lty = 2, lwd = 2, main = " ", xlab = " ", ylab = " ")
lines(dTT6, lty = 6, lwd = 2)
lines(dTT10, lty = 10, lwd = 2)
legend("topright", legend = c("MM", "MV", "ME"), lty = 1:3, lwd = 2)

#Plotando os Gráficos - amostra n100
plot(dTT3, xlim = c(1,3), lty = 3, lwd = 2, main = " ", xlab = " ", ylab = " ")
lines(dTT7, lty = 7, lwd = 2)
lines(dTT11, lty = 11, lwd = 2)
legend("topright", legend = c("MM", "MV", "ME"), lty = 1:3, lwd = 2)

#Plotando os Gráficos - amostra n1000
plot(dTT4, xlim = c(1,3), lty = 4, lwd = 2, main = " ", xlab = " ", ylab = " ")
lines(dTT8, lty = 8, lwd = 2)
lines(dTT12, lty = 12, lwd = 2)
legend("topright", legend = c("MM", "MV", "ME"), lty = 1:3, lwd = 2)

########### II)
# Convergência em distribuição
TTS <- (TT-2)/sqrt(TS)
summary(TTS[,c(1:4)]) # MM
## V1 V2 V3 V4
## Min. :-18.46929 Min. :-18.12770 Min. :-7.8489 Min. :-2.8543
## 1st Qu.: -0.63236 1st Qu.: -0.61743 1st Qu.:-0.4445 1st Qu.:-0.2297
## Median : 0.21773 Median : 0.23524 Median : 0.2813 Median : 0.3304
## Mean : 0.08991 Mean : 0.09082 Mean : 0.1754 Mean : 0.2817
## 3rd Qu.: 1.01063 3rd Qu.: 1.00478 3rd Qu.: 0.9236 3rd Qu.: 0.8480
## Max. : 4.36681 Max. : 4.35642 Max. : 3.3723 Max. : 2.9597
summary(TTS[,c(5:8)]) # MV
## V1 V2 V3 V4
## Min. :-3.972600 Min. :-3.61727 Min. :-4.10769 Min. :-5.60595
## 1st Qu.:-0.673425 1st Qu.:-0.65400 1st Qu.:-0.65131 1st Qu.:-0.58822
## Median : 0.016242 Median : 0.02099 Median : 0.04322 Median : 0.09831
## Mean : 0.006403 Mean : 0.01014 Mean : 0.00082 Mean : 0.01296
## 3rd Qu.: 0.699443 3rd Qu.: 0.69810 3rd Qu.: 0.68846 3rd Qu.: 0.71820
## Max. : 3.903969 Max. : 4.11300 Max. : 3.24850 Max. : 2.95269
summary(TTS[,c(9:12)]) # ME
## V1 V2 V3
## Min. :-0.3176734 Min. :-0.2607077 Min. :-1.017885
## 1st Qu.:-0.0421525 1st Qu.:-0.0441586 1st Qu.:-0.144964
## Median : 0.0007262 Median : 0.0010536 Median : 0.001520
## Mean : 0.0001809 Mean : 0.0006391 Mean :-0.004906
## 3rd Qu.: 0.0436505 3rd Qu.: 0.0466674 3rd Qu.: 0.142424
## Max. : 0.3028384 Max. : 0.3080538 Max. : 0.803979
## V4
## Min. :-2.80184
## 1st Qu.:-0.40917
## Median :-0.01157
## Mean :-0.02275
## 3rd Qu.: 0.36053
## Max. : 6.50633
# Calculando as densidades do estimador padronizado
densidades_TTS <- list()
for (i in 1:12) {
densidades_TTS[[i]] <- density(TTS[,i])
}
# Plotando as densidades do estimador padronizado
cores <- c("red", "blue", "green")
plot(densidades_TTS[[1]], xlim = range(TTS), lty = 1, lwd = 2, col = cores[1],
main = "Densidades do estimador padronizado", xlab = "TTS", ylab = "Densidade")
for (i in 2:12) {
lines(densidades_TTS[[i]], lty = i%%4, lwd = 2, col = cores[(i-1) %/% 4 + 1])
}
legend("topright", legend = c("MM", "MV", "ME"), lty = 1:3, lwd = 2, col = cores)

############################################################################## QUESTÃO 5
summary(TT[,1])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.208 1.958 2.015 2.010 2.070 2.338
summary(TT[,2])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.191 1.957 2.017 2.011 2.073 2.359
summary(TT[,3])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.025 1.905 2.065 2.068 2.228 3.156
summary(TT[,4])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.069 1.877 2.205 2.308 2.617 9.731
summary(TT[,5])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.777 1.958 2.001 2.002 2.045 2.282
summary(TT[,6])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.785 1.957 2.001 2.003 2.048 2.318
summary(TT[,7])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.396 1.872 2.009 2.023 2.156 3.041
summary(TT[,8])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.8006 1.7283 2.0540 2.1611 2.4751 9.4850
summary(TT[,9])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.627 1.940 2.001 2.004 2.064 2.463
summary(TT[,10])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.677 1.938 2.002 2.005 2.069 2.463
summary(TT[,11])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.109 1.812 2.002 2.031 2.218 3.648
summary(TT[,12])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.6274 1.5623 1.9847 2.1841 2.5838 10.5501
BiasTT<-cbind(mean((TT[,1]-2)), mean((TT[,2]-2)),mean((TT[,3]-2)), mean((TT[,4]-2)),mean((TT[,5]-2)),mean((TT[,6]-2)),mean((TT[,7]-2)),mean((TT[,8]-2)),mean((TT[,9]-2)),mean((TT[,10]-2)),mean((TT[,11]-2)),mean((TT[,12]-2)))
EQMTT<-cbind(mean((TT[,1]-2)^2), mean((TT[,2]-2)^2),mean((TT[,3]-2)^2), mean((TT[,4]-2)^2),mean((TT[,5]-2)^2),mean((TT[,6]-2)^2),mean((TT[,7]-2)^2),mean((TT[,8]-2)^2),mean((TT[,9]-2)^2),mean((TT[,10]-2)^2),mean((TT[,11]-2)^2),mean((TT[,12]-2)^2))
BiasTT
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0.009943539 0.01071925 0.06752248 0.30812 0.002396527 0.002875251
## [,7] [,8] [,9] [,10] [,11] [,12]
## [1,] 0.02261451 0.1611397 0.00384289 0.004841685 0.03086677 0.1841051
EQMTT
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 0.008289524 0.009096123 0.06507942 0.4870498 0.004001679 0.00442029
## [,7] [,8] [,9] [,10] [,11] [,12]
## [1,] 0.04679186 0.4179535 0.00859376 0.009426885 0.09790079 0.8457834
############################################################################## QUESTÃO 6
summary(TS[,1])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.001837 0.004330 0.004561 0.004549 0.004793 0.006007
summary(TS[,2])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.001991 0.004806 0.005077 0.005059 0.005342 0.006783
summary(TS[,3])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.01544 0.04574 0.05301 0.05380 0.06102 0.11745
summary(TS[,4])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.1065 0.2863 0.3847 0.4462 0.5298 6.8234
summary(TS[,5])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.003157 0.003835 0.004004 0.004014 0.004183 0.005206
summary(TS[,6])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.003539 0.004257 0.004451 0.004462 0.004659 0.005969
summary(TS[,7])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.02164 0.03892 0.04485 0.04597 0.05167 0.10278
summary(TS[,8])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.04578 0.21336 0.30134 0.36161 0.43757 6.42606
summary(TS[,9])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.368 1.921 2.076 2.092 2.246 3.428
summary(TS[,10])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.287 1.912 2.075 2.094 2.255 3.338
summary(TS[,11])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.4904 1.5500 1.9981 2.1679 2.6064 16.5608
summary(TS[,12])
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.08958 0.90354 1.59560 2.59902 2.92401 97.02166
BiasTS <- cbind(mean((TS[,1]-2)), mean((TS[,2]-2)),mean((TS[,3]-2)), mean((TS[,4]-2)),mean((TS[,5]-2)),mean((TS[,6]-2)),mean((TS[,7]-2)),mean((TS[,8]-2)),mean((TS[,9]-2)),mean((TS[,10]-2)),mean((TS[,11]-2)),mean((TS[,12]-2)))
EQMTS <- cbind(mean((TS[,1]-2)^2), mean((TS[,2]-2)^2),mean((TS[,3]-2)^2), mean((TS[,4]-2)^2),mean((TS[,5]-2)^2),mean((TS[,6]-2)^2),mean((TS[,7]-2)^2),mean((TS[,8]-2)^2),mean((TS[,9]-2)^2),mean((TS[,10]-2)^2),mean((TS[,11]-2)^2),mean((TS[,12]-2)^2))
BiasTS
## [,1] [,2] [,3] [,4] [,5] [,6] [,7]
## [1,] -1.995451 -1.994941 -1.946204 -1.553826 -1.995986 -1.995538 -1.954031
## [,8] [,9] [,10] [,11] [,12]
## [1,] -1.638392 0.09181627 0.09435732 0.1678821 0.5990219
EQMTS
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## [1,] 3.981825 3.97979 3.787847 2.479572 3.983962 3.982171 3.818334 2.741489
## [,9] [,10] [,11] [,12]
## [1,] 0.06895349 0.07569763 0.8102199 12.74676
############################################################################## QUESTÃO 7
setwd("C:/Users/MarcelAlmeida/Cofco International/FSUSA - Coffee/Marcel/R/")
data_pop <- readxl::read_excel("pop2000.xlsx")
#Características
K = 9
samplesz <- 50000+K*50
samplesz
## [1] 50450
df <- subset(data_pop, pop_2000>samplesz)
df_est <- matrix(0, ncol=3, nrow = 3) # estimates matrix
df_est2 <- matrix(0, ncol=3, nrow = 3) # Std Err. matrix