In [1]:
# rm(list=ls())
options(OutDec = ",")
#==============================================================================
# Exemplo para gerar da distribuicao Gama(kappa,beta) utilizando U(0,1) e a
# soma de v.a.'s exponenciais
#==============================================================================
# Para uma gama com kappa = 2 e beta = 4
#==============================================================================
set.seed(54345) # Semente
n <- 10000 # Tamanho da amostra
kappa <- 2
beta <- 4
In [2]:
#==============================================================================
# A matriz Z e' composta por uma amostras de tamanho kappa x n da distribuicao
# exponencial com parametro beta
#==============================================================================
Z <- matrix(-log(runif(floor(kappa)*n))/beta,n,floor(kappa))
x <- apply(Z,1,"sum") # Soma das colunas da matriz
In [3]:
#==============================================================================
# Histograma
#==============================================================================
par(mfrow=c(1,1),lwd=2,cex.lab=1.5,cex.axis=1.5,lab=c(12,6,0),
mar=c(4.5,5,2,1),bty="n")
hist(x,nclass=30,prob=T,main="",ylim=c(0,1.6),xlim=c(0,3.2),col="darkgreen",
ylab=expression(f(x)),xlab=expression(x))
xseq <- seq(0.001,3,length=1000)
yseq <- dgamma(xseq,kappa,beta)
lines(xseq,yseq,col="red",lwd=3)
In [4]:
# rm(list=ls())
#==============================================================================
# graphics.off()
#==============================================================================
# Fim
#==============================================================================