Mauricio Tejada
ILADES - Universidad Alberto Hurtado
Agosto 2017
Aplicación tomada del libro "Matemática para Economistas con Excel y Matlab" de Alicia Bernardello y coautores
Características del modelo:
Suponga una economía con tres sectores:
Prod/Ins | I | II | III |
---|---|---|---|
I | 0.2 | 0.6 | 0 |
II | 0.2 | 0 | 0.2 |
III | 0.4 | 0.2 | 0.5 |
clear all;
A = [0.2 0.6 0; 0.2 0 0.2; 0.4 0.2 0.5]
A = 0.2000 0.6000 0 0.2000 0 0.2000 0.4000 0.2000 0.5000
eigA = eig(A)
detL = det(eye(3)-A)
eigA = 0.7445 0.1432 -0.1877 detL = 0.2600
invL = inv(eye(3)-A)
invL = 1.7692 1.1538 0.4615 0.6923 1.5385 0.6154 1.6923 1.5385 2.6154
d = [100; 50; 200]
x = invL*d
d = 100 50 200 x = 326.9231 269.2308 769.2308
d2 = [110; 100; 180];
Dd = d2-d
Dx = invL*Dd
Dd = 10 50 -20 Dx = 66.1538 71.5385 41.5385
Aplicación tomada del libro "Matemática para Economistas con Excel y Matlab" de Alicia Bernardello y coautores
El Modelo:
El modelo puede ser resuelto usando el método de reemplazo para encontrar la solución al sistema de ecuaciones. Bastante tedioso. Definamos mas bien el siguiente vector: $$x = (Q_1,Q_2,P_1,P_2)'$$
Definamos entonces: $$ Ax = b$$
La solución del sistema de ecuaciones es entonces (si $A$ es invertible): $$x = A^{-1} \times b$$
A = [1 0 2 -1;
1 0 -3 1;
0 1 -1 1;
0 1 0 -2]
b = [40; -5; 90; -2]
dA = det(A)
A = 1 0 2 -1 1 0 -3 1 0 1 -1 1 0 1 0 -2 b = 40 -5 90 -2 dA = -13
Solución:
x = A \ b % alternativamente x =inv(A)*b
x = 29.7692 75.6923 24.5385 38.8462
Entonces: $Q_1=29.7$ ,$P_1=24.5$, $Q_2=75.7$, $P_2=38.8$.
Construiremos dos vectores $X_1$ y $X_2$ de $N \times 1$ cada uno y con ello un vector $y$ de acuerdo a:
$$y_i = 3 + 0.5X_{1i} + 0.9X_{2i} + \epsilon_i$$donde $X_{1i} \sim N(1,4)$, $X_{2i} \sim N(2,4)$ y $\epsilon \sim N(0,1)$.
A partir de estos datos usaremos la fórmula estándar de MCO para encontrar los coeficientes estimados. $$\hat{\beta} = (X'X)^{-1} X'y$$
N = 100;
X1 = 1 + 2*randn(N,1);
X2 = 2 + 2*randn(N,1);
eps = randn(N,1);
y = 3 + 0.5*X1 +0.9*X2 + eps;
data = [y X1 X2];
dlmwrite('DatosMCO.txt',data);
clear all;
whos
impdata = importdata('DatosMCO.txt');
whos;
Name Size Bytes Class Attributes impdata 100x3 2400 double
[N, K] = size(impdata);
y = impdata(:,1);
X1 = impdata(:,2);
X2 = impdata(:,3);
X = [ones(N,1) X1 X2];
beta = (X'*X)\(X'*y) % alternativa beta = inv(X'*X)*(X'*y)
beta = 2.9913 0.5640 0.8020
err = y - X*beta;
yhat = X*beta;
plot([y yhat]);
title('Ajuste')
legend('y','yhat');
plot(err);
title('Errores');