%% Auxiliar 2 % Econometría IN709 % Nicolás Tagle L. % 2013 clear clc randn('seed', 8) %% Sesgo asintótico %Especifico modelo real. n=1000000; %Tamaño muestra 100000 k=6; %K=k+1 por el intercepto X=[ones(n,1) rand(n,k)]; %Genero matriz X de nxK B=[0.1 2 -3 4 5 2.1 4.1]'; %Genero vector de B Kx1 s=1.2; %Desv de los errores e=randn(n,1)*s; %Genero valores aleatorios Y=X*B+e; %Modelo especificado; %Estimo modelo bien especificado para distintos tamaños de muestra: %100 B_ols_100=(X(1:100,:)'*X(1:100,:))^-1*X(1:100,:)'*Y(1:100,:); %1000 B_ols_10000=(X(1:10000,:)'*X(1:10000,:))^-1*X(1:10000,:)'*Y(1:10000,:); %100000 B_ols_1000000=(X(1:1000000,:)'*X(1:1000000,:))^-1*X(1:1000000,:)'*Y(1:1000000,:); %Sesgo asintótico: S_ols_100=abs(B-B_ols_100); S_ols_10000=abs(B-B_ols_10000); S_ols_1000000=abs(B-B_ols_1000000); %Grafico los sesgos subplot(3,1,1); bar(S_ols_100); subplot(3,1,2); bar(S_ols_10000); subplot(3,1,3); bar(S_ols_1000000); %Disminuye sesgo a medida que aumenta tamaño de muestra. %% Omisión de variables relevantes % Modelo real: Y=XB+e % Modelo real: Y=X1B1+X2B2+e %Donde X=[X1 X2] %¿Qué pasa si no incluyo los regresores X2 en mi estimación? %% Caso 1: X1 y X2 no están correlacionados E(X1'X2)=0 clc clear randn('seed', 8) %Especifico modelo real. n=1000000; %Tamaño muestra 1000000 k=6; %K=k+1 por el intercepto X=[ones(n,1) randn(n,k)]; %Genero matriz X de nxK B=[0.1 2 -3 4 5 2.1 4.1]'; %Genero vector de B Kx1 s=1.2; %Desv de los errores e=randn(n,1)*s; %Genero valores aleatorios Y=X*B+e; %Modelo especificado; X1=X(:,1:4); X2=X(:,5:7); %Estimo modelo mal especificado para distintos tamaños de muestra: %100 B1_OLS_100=(X1(1:100,:)'*X1(1:100,:))^-1*X1(1:100,:)'*Y(1:100,:); %1000 B1_OLS_10000=(X1(1:10000,:)'*X1(1:10000,:))^-1*X1(1:10000,:)'*Y(1:10000,:); %100000 B1_OLS_1000000=(X1(1:1000000,:)'*X1(1:1000000,:))^-1*X1(1:1000000,:)'*Y(1:1000000,:); %Matriz Gamma: GAMMA_100=X1(1:100,:)'*X2(1:100,:)/100; %1000 GAMMA_10000=X1(1:10000,:)'*X2(1:10000,:)/10000; %100000 GAMMA_1000000=X1(1:1000000,:)'*X2(1:1000000,:)/1000000; %Sesgo asintótico: S1_OLS_100=abs(B(1:4,1)-B1_OLS_100); S1_OLS_10000=abs(B(1:4,1)-B1_OLS_10000); S1_OLS_1000000=abs(B(1:4,1)-B1_OLS_1000000); %Grafico los sesgos subplot(3,1,1); bar(S1_OLS_100); subplot(3,1,2); bar(S1_OLS_10000); subplot(3,1,3); bar(S1_OLS_1000000); %Como X1 y X2 no están correlacionados (fueron generados iid) , %entonces plim(GAMMA)=0, y el sesgo desaparece. %% Caso 2: X1 y X2 están correlacionados E(X1'X2)<>0 clc clear randn('seed', 8) %Modelo real será Y=b0+x1b1+x2b2+x3b3+e %Estimaremos el modelo sin incluir x3. %X1[1 x1 x2] %X2[x3] %Se estimará Y=X1B1+u %Especifico modelo real. n=1000000; %Tamaño muestra 1000000 B=[0.1 2 -3 4 ]'; %Genero vector de B 4x1 X1=[ones(n,1) randn(n,1) randn(n,1)]; %Genero matriz X de nxK %x3 estará correlacionado con x2 X2=3.5*X1(:,3)+randn(n,1)*0.5; gamma=cov(X2,X1(:,3)); corr(X2,X1(:,3)) X=[X1 X2]; s=1.2; %Desv de los errores e=randn(n,1)*s; %Genero valores aleatorios Y=X*B+e; %Modelo especificado; %Estimo modelo mal especificado para distintos tamaños de muestra: %100 B1_OLS_100=(X1(1:100,:)'*X1(1:100,:))^-1*X1(1:100,:)'*Y(1:100,:); %1000 B1_OLS_10000=(X1(1:10000,:)'*X1(1:10000,:))^-1*X1(1:10000,:)'*Y(1:10000,:); %100000 B1_OLS_1000000=(X1(1:1000000,:)'*X1(1:1000000,:))^-1*X1(1:1000000,:)'*Y(1:1000000,:); %Matriz Gamma: GAMMA_100=X1(1:100,:)'*X2(1:100,:)/100; %1000 GAMMA_10000=X1(1:10000,:)'*X2(1:10000,:)/10000; %100000 GAMMA_1000000=X1(1:1000000,:)'*X2(1:1000000,:)/1000000; %Sesgo asintótico: S1_OLS_100=abs(B(1:3,1)-B1_OLS_100); S1_OLS_10000=abs(B(1:3,1)-B1_OLS_10000); S1_OLS_1000000=abs(B(1:3,1)-B1_OLS_1000000); %Grafico los sesgos subplot(3,1,1); bar(S1_OLS_100); subplot(3,1,2); bar(S1_OLS_10000); subplot(3,1,3); bar(S1_OLS_1000000); %Como x3 y x4 están correlacionados, entonces plim(GAMMA)<>0, y el %parámetro asociado está sesgado.