Professional Documents
Culture Documents
42
nombre
R
Argumentos adicionales2
beta
binomial
Chi-square
continuous uniform
exponential
F distribution
gamma
hypergeometric
beta
binom
chisq
unif
exp
f
gamma
hyper
normal
Poisson
t distribution
Weibull
norm
pois
t
weibull
rate (= 1/)
df1 (r1), df2 (r2)
Argumentos por
defecto
min = 0, max = 1
rate = 1
rate = 1
scale = 1
mean = 0, sd = 1
A cada nombre de funcin dado por R (tabla anterior) se le agrega un prefijo d para
obtener la funcin de densidad o de probabilidad puntual, p para la funcin de
distribucin acumulada FDA, q para la funcin cuantil o percentil y r para generar
variables pseudo-aleatorias (random). La sintaxis es la siguiente:
>
>
>
>
drname(x,
prname(q,
qrname(p,
rrname(n,
...)
...)
...)
...)
#
#
#
#
evala
evala
evala
simula
la fdp o la fpp en x
la FDA en q
el psimo percentil de esta distribucin
n observaciones de esta distribucin
43
Hogg and Tanis (2006) parameter names are given in parentheses. See the help files for the exact
distribution parameterizations.
I = g ( x)dx,
a
pero que la primitiva de g(x) no puede darse en una forma cerrada. Las tcnicas estndar
involucran aproximar la integral por una suma, muchos paquetes de computacin hacen
esto. Otro procedimiento para hallar I es llamado integracin de Monte Carlo.
Supongamos que generamos observaciones pseudo-aleatorias x = (x1, x2, , xn ) de n
variables aleatorias independientes X = X1, X2, , Xn con distribucin uniforme en el
intervalo [a, b] y calculamos
1
I( x) = (b a) g ( xi )
n i =1
n
Por la Ley de los Grandes Nmeros, a medida que n crece (sin ninguna cota),
I( X ) = (b a) g ( X i ) n
(b a) E [g ( X )].
n i =1
n
Pero,
b
E [g ( X ) ] = g ( x )
a
1
1
dx =
I
ba
ba
De manera que, I( x) puede ser utilizada como una aproximacin de I que mejora a
medida que n crece.
Este mtodo puede ser modificado para utilizar otras distribuciones (aparte de la
Uniforme) definidas sobre el mismo intervalo. Comparado con otros mtodos
numricos para aproximar integrales, el mtodo de Monte Carlo no es especialmente
44
eficiente. Sin embargo, el mtodo de Monte Carlo tiene una eficiencia creciente a
medida que aumenta la dimensionalidad de la integral (por ej. integrales dobles, triples).
2
x3
dx
Un estimador de Monte Carlo (utilizando 1 000 000 de observaciones) estar dado por:
a=2
Otra llamada da un resultado diferente (son distintas estimaciones del valor lmite!):
> 2*mean(exp(runif(1000000,min=0,max=2)^3))
[1] 276.6815
0.15
0.10
0.05
0.00
0.20
0.25
6
x
10
45
Hemos realizado algunas cosas aqu. Primero hemos creado el vector x que contiene los
enteros del 0 al 10. Luego calculamos las probabilidades binomiales en cada uno de los
puntos de x y las guardamos en el vector y. Luego especificamos un grfico de tipo "h"
que da el aspecto de histograma con lneas verticales y hemos engordado las lneas con
la opcin lwd = 20 (el ancho por defecto es 1, que corresponde al grosor de la lnea).
Finalmente le dimos un color y un ttulo informativo. Notemos que para ahorrar espacio
en el espacio de trabajo, podriamos haber obtenido el mismo grfico sin crear los
vectores x e y:
> plot(0:10, dbinom(0:10, size=10, prob=.25),xlab="x", ylab="y", type
= "h", lwd = 20, main = "Probabilidades Binomiales con n = 10, p =
.25", col = "gray") # enter
0.00
0.05
0.10
0.15
0.20
0.25
10
46
0.2
0.4
F(x)
0.6
0.8
1.0
10
0.2
0.0
0.1
dnorm(x)
0.3
0.4
-3
-2
-1
47
0.6
0.4
0.0
0.2
0.8
1.0
10
12
14
16
Note que en el primer grfico hemos restringido los valores al intervalo -3 , 3 donde la
normal estndar tiene la mayor parte de su rea. En forma alternativa podramos haber
usado percentiles superior e inferior (digamos del .5% y 99.5%) calculndolos mediante
la funcin qnorm():
> curve(dnorm(x), from = qnorm(0.005), to = qnorm(0.995))
48
0.04
0.00
0.02
Density
0.06
0.08
10
20
30
40
50
60
datos.simulados
entero
Ejemplos:
>
sample(1:100, 1) # elige un nmero entre 1 y 100
[1] 88
49
>
sample(1:6, 10, replace = T) # arroja un dado equilibrado 10
veces
[1] 6 4 2 5 5 5 2 2 4 1
>
sample(1:6, 10, T, c(.6,.2,.1,.05,.03,.02)) # dado no
equilibrado!!
[1] 1 6 1 1 3 1 3 3 1 1
>
urna <- c(rep("rojo",8),rep("azul",4),rep("amarillo",3))
>
sample(urna, 6, replace = F) # elige 6 balitas de la urna
[1] "amarillo" "rojo"
"rojo"
"amarillo" "rojo"
"rojo"
6.5 Ejercicios
log(1 + tan
( x))dx