In [1]:
# rm(list=ls())
options(OutDec = ",") 
#==============================================================================
# Exemplo:
#
# Integracao Monte Carlo 
#
# Calculando q tal que P(Z<q)=0,975, Z ~ N(0,1)
#
#==============================================================================
set.seed(12345)  # Semente
In [2]:
#==============================================================================
# Para n = 100 # Cem
#==============================================================================
n   <- 100
z   <- rnorm(n)
m   <- 1000
qx  <- seq(0,4,length=m)
Fe  <- rep(NA,m)
for(j in 1:m) Fe[j] <- mean( (z <= qx[j]) )
print(min(qx[which(Fe>=0.975)]))
[1] 2,198198
In [3]:
#==============================================================================
# Para n = 1000 # Mil
#==============================================================================
n   <- 1000
z   <- rnorm(n)
m   <- 1000
qx  <- seq(0,4,length=m)
Fe  <- rep(NA,m)
for(j in 1:m) Fe[j] <- mean( (z <= qx[j]) )
print(min(qx[which(Fe>=0.975)]))
[1] 2,07007
In [4]:
#==============================================================================
# Para n = 10000 # Dez mil
#==============================================================================
n   <- 10000
z   <- rnorm(n)
m   <- 1000
qx  <- seq(0,4,length=m)
Fe  <- rep(NA,m)
for(j in 1:m) Fe[j] <- mean( (z <= qx[j]) )
print(min(qx[which(Fe>=0.975)]))
[1] 1,953954
In [5]:
#==============================================================================
# Para n = 100000 # Cem mil
#==============================================================================
n   <- 100000
z   <- rnorm(n)
m   <- 1000
qx  <- seq(0,4,length=m)
Fe  <- rep(NA,m)
for(j in 1:m) Fe[j] <- mean( (z <= qx[j]) )
print(min(qx[which(Fe>=0.975)]))
[1] 1,965966
In [6]:
#==============================================================================
# Para n = 1000000 # Um milhao
#==============================================================================
n   <- 1000000
z   <- rnorm(n)
m   <- 1000
qx  <- seq(0,4,length=m)
Fe  <- rep(NA,m)
for(j in 1:m) Fe[j] <- mean( (z <= qx[j]) )
print(min(qx[which(Fe>=0.975)]))
[1] 1,965966
In [7]:
# rm(list=ls()) 
#==============================================================================
# graphics.off()
#==============================================================================
# Fim
#==============================================================================