Está en la página 1de 4

Código de simulación

Nombres: Juan Sebastián Vásquez Serrano, Juan Sebastián Balaguera Medina.


Facultad: Economía.
Asignatura: econometría 1.

En primera parte lo que hicimos fue sacar la prueba de insesgadez y para esta prueba de
insegadez empezamos conociendo nuestras variables, seleccionar entorno a mis variables y
a mis datos, empezamos nombrarlas, colocamos BBVA y colocamos el valor mil porque se
pondrán mil datos, para este trabajo se colocó ese valor en la segunda columna viene hacer
el promedio de los datos de BBVA y la tercera es la desviación
bbva=rnorm(1000, 1175.39, 38.94)
Para el b1 colocamos el valor exacto que tenemos de el y en la segunda columna
colocamos una desviación que sea coherente con el resultado que nos dio el B1 igualmente
para B0, su valor y exacto junto con su desviación.
beta1=rnorm(1000,0.006391,0.0001)
beta=runif(1000,-4.73,-4.7)
plot(density(beta1), col="Red")
Siguiente paso, empezamos a nombrar nuestra variable Y que en nuestro caso es colcap,
entonces la nombramos y colocamos la ecuación.
colcap=beta+beta1*bbva
hist(colcap)
head(data.frame(beta,beta1,bbva,colcap))
Empezamos a nombrar nuestros datos que son con base a la variable BBVA y COLCAP
datos=data.frame(colcap,bbva)
head(datos)
y respecto a la insesgadez como ya tenemos nombrados nuestras ecuaciones y nuestros
datos empezamos a armar nuestros modelos y nuestros vectores para cada semilla eligimos
desde e 1 hasta la 50
set.seed(1)
datos1=datos[sample(nrow(datos), 10), ]
modelo1=lm(datos1$colcap~datos1$bbva)
vec1=as.vector(coef(modelo1))
El modelo de arriba seria el ejemplo que tomaremos para hacer las 50 semillas, solo que
cambiando su respectivo numero que va diferenciar las 50 semillas que serán del 1 al 50.
Ahora después de haber creado las 50 semillas vamos a crear un vector, primero creamos
un vector para B1 y otro para B0 utilizamos los datos de la segunda variable vector
creada, entonces utilizamos todos los valores de esta segunda variable de vector creada que
son 50 entonces ya tenemos el vector de B1 con sus 50 datos creado luego lo ejecutamos y
creamos un promedio y ese promedio nos debe dar similar al valor exacto de B1
B1=c(0.00709,0.0064,0.00553,0.00647,0.00683,0.00821,0.00688,0.00864,0.00675,0.0051
3,0.00617,0.00621,0.00567,0.00719,0.00675,0.0057,0.0093,0.00828,0.00524,0.00636,0.00
74,0.00537,0.00442,0.00781,0.00593,0.0053,0.007,0.0029,0.00605,0.00454,0.00693,0.007
29,0.00671,0.00575,0.00684,0.00505,0.00519,0.00561,0.00557,0.0059,0.0063,0.00631,0.0
0569,0.0107,0.00788,0.00522,0.00364,0.00711,0.00457,0.00772)
median(B1)
= 0.006305
Como observamos el promedio que nos da es similar a el valor exacto de B1 que es
0.006391.

Seguido de esto debemos hacer el B0 pero para hacer este no pondremos los mismos
valores si no que utilizaremos el primer valor de todos los 50 vectores creados porque el
vector nos da dos variables que es para B0 todos los primeros valores y para B1 todos los
segundos valores de los 50 vectores creados y hacemos lo mismo que hicimos con
B1ponemos los 50 valores y listo creamos nuestro vector entonces lo ejecutamos y le
sacamos el promedio asi mismo el promedio nos debe dar similar a nuestro B0

B0=c(-5.5479,-4.6895,-3.67548,-4.77725,-5.24996,-6.79924,-5.25767,-7.22986,-5.09775,-
3.23796,-4.4317,-4.4961,-3.80081,-5.72067,-5.14704,-3.9193,-8.1308,-6.90581,-3.35945,-
4.66776,-5.8794,-3.55906,-2.42879,-6.37299,-4.18599,-3.4657,-5.407,-0,5632,-4.36632,-
2.57295,-5.34211,-5.80502,-5.16984,-4.04387,-5.19018,-3.19105,-3.35127,-3.80023,-
3.7489,-4.1676,-4.6081,-4.67752,-3.87738,-9.709,-6.4191,-3.34118,-1.5005,-5.58485,-
2.65073,-6.29011)

median(B0)

= -4.6081

Como observamos el promedio que nos da es similar a el valor exacto de B0 que es -4.7348

Procederemos a tomar 10 muestras y sacar la desviación de b1 y a esa desviación le resto


primer resultado para la eficiencia, pero como sacaremos varias muestras colocaremos b1.1,
b1.2 b1.3 y asi sucesivamente, a ese resultado final que nos da el resultado de margen de
error, cogemos todas las márgenes de error y con eso creamos un vector el cual le sacamos
un promedio y con eso ya tenemos la varianza.
varianzab1=var(c(0.00709,0.0064,0.00553,0.00647,0.00683))
Desviacionb1=sqrt(varianzab1)
Errordes=Desviacionb1-0.0001

(son 10 muestras las cuales están etiquetadas con B1.1, B1.2, B1.3 etc.)

Eficiencia=median(0.00161813,0.001927296,0.0002424617,0.0004751348,0.00145638,0.0
01310791,0.001640885,0.0004849102,0.00128321,0.000492098)

= 0.00161813

Siguiente paso será sacar la consistencia, para la consistencia lo que nosotros hacemos es
primero nombrar nuestras variables, para que el R no nos pierda ningún dato, esta vez
ejecutamos es la variable Datos 2, creamos una sumatoria del modelo 1 para que nos realice
resultados pero donde dice 50 son los datos que estamos tomando, pero nosotros
necesitamos diferentes datos y no solo el 50, necesitaremos 4 semillas aleatorias, entonces
vamos de 50 a 50 para obtener mínimo 20 diferentes resultados y creamos un vector con los
resultados y al tener un vector con los resultados ya podemos graficar

####consistencia
##primera semilla
set.seed(10)
bbva=rnorm(1000, 1175.39, 38.94)
beta1=rnorm(1000,0.006391,0.0001)
beta=runif(1000,-4.73,-4.7)
colcap=beta+beta1*bbva
datos=data.frame(colcap,bbva)
##se arma el modelo
datos2=datos[sample(nrow(datos),1200),]
modelo1=lm(datos2$colcap~datos2$bbva)
summary(modelo1)

Resultados=c(0.0068508,0.0066894,0.0059572,0.0069128,0.0066612,0.0065687,
0.0064903,
0.0066683,0.0065006,0.0064385,0.0064867,0.0065487,0.0066035,0.0065084,0.0066380,0.
0064832,0.0065415,0.0065159,0.0065484,0.0065353)

class(Resultados)
c=as.vector(Resultados)
plot(Resultados,type = "l")
abline(h=0.006391,col="blue")

De esa manera hacemos las 4 semillas que serán 10, 20, 30, y 40

También podría gustarte