*net install tsg_schemes, from("https://raw.githubusercontent.com/asjadnaqvi/Stata-schemes/main/schemes/") replace
set scheme white_tableau, permanently
(set scheme preference recorded)
use "https://github.com/quarcs-lab/data-open/raw/master/ede/Macro_PEBLIF.dta", clear
describe
Contains data from https://github.com/quarcs-lab/data-open/raw/master/ede/Macro_
> PEBLIF.dta
Observations: 10,208
Variables: 24 7 Feb 2014 10:37
--------------------------------------------------------------------------------
Variable Storage Display Value
name type format label Variable label
--------------------------------------------------------------------------------
year float %8.0g Year
tyr15 float %9.0g Average years of Education in
Population aged over 15
pop double %10.0g Population
ki float %9.0g Investment share of RGDPL (RGDP
(Lespeyres))
openc float %9.0g Openness (Imports+Exports/GDP in
current prices)
openk float %9.0g Openness (Imports+Exports/GDP in
constant prices)
rgdpch float %9.0g Real GDP per Capita in constant
1996 US$ (Chain index)
wbcode str9 %9s World Bank Code
eda float %9.0g Eda is aid data from World Bank
1998
eda96 float %9.0g eda*100/uvimp96
country str21 %21s Country
open byte %8.0g Sachs Warner Openness measure
nwbcode int %8.0g
edapc float %9.0g eda96*1000000*100/(rgdp)
kap_ss float %9.0g Capital Stock (Inputed)
region3 str33 %33s Region
polright float %9.0g Political rights Score 1-7, 1
highest
civilib float %9.0g Civil liberites Score 1-7, 1
highest
freedom str9 %9s Freedom Measure from Freedom House
free float %9.0g political rights+Civil liberties
1-2.5
pfree float %9.0g political rights+Civil liberties
3.0-5.5
nfree float %9.0g political rights+Civil liberties
5.5-7.0
budef float %9.0g Overall budget deficit, including
grants (% of GDP) from WB
cpi float %9.0g Consumer price Index 1995=100, IMF
and WB sources
--------------------------------------------------------------------------------
Sorted by:
sum
Variable | Obs Mean Std. dev. Min Max
-------------+---------------------------------------------------------
year | 10,208 1975.803 14.41323 1950 2000
tyr15 | 919 4.791109 2.827026 .086 12.049
pop | 5,847 3.13e+07 1.08e+08 40820 1.26e+09
ki | 5,842 15.74089 9.560796 -3.45863 101.1316
openc | 5,850 65.7086 45.37079 3.147952 473.8573
-------------+---------------------------------------------------------
openk | 5,861 67.92179 51.42986 4.31e-09 440.5004
rgdpch | 5,788 5774.312 5929.236 281.2581 43989.44
wbcode | 0
eda | 2,793 152.2209 297.4953 -337.5642 4533.02
eda96 | 2,793 181.3203 351.0395 -374.7342 5032.161
-------------+---------------------------------------------------------
country | 0
open | 4,179 .3606126 .4802357 0 1
nwbcode | 10,208 109.2102 61.84675 2 216
edapc | 2,027 1.914606 2.904287 -.0869032 28.26406
kap_ss | 4,003 5.37e+11 1.90e+12 8.44e+07 2.92e+13
-------------+---------------------------------------------------------
region3 | 0
polright | 4,517 4.004206 2.231057 1 7
civilib | 4,517 4.004428 1.92542 1 7
freedom | 0
free | 4,517 .3537746 .4781932 0 1
-------------+---------------------------------------------------------
pfree | 4,517 .3238875 .4680095 0 1
nfree | 4,517 .3223378 .4674233 0 1
budef | 2,762 -3.660668 6.069466 -64.49265 58.71334
cpi | 5,382 168.6611 5880.787 5.93e-12 415620
drop if nwbcode==. | year==.
(0 observations deleted)
xtset nwbcode year
Panel variable: nwbcode (unbalanced)
Time variable: year, 1950 to 2000
Delta: 1 unit
Evolution of GDP per capita
tsline rgdpch if country == "ARGENTINA", legend(off)
gen ln_gdp = ln(rgdpch)
tsline ln_gdp if country == "ARGENTINA", legend(off)
(4,420 missing values generated)
Evolution of the investment share
tsline ki if country == "ARGENTINA", legend(off)
gen ln_s = ln(ki)
tsline ln_s if country == "ARGENTINA", legend(off)
(4,368 missing values generated)
Evolution of the (adjusted) population growth rate
gen ln_pop = ln(pop)
gen L1_ln_pop = L.ln_pop
gen n = ln_pop - L1_ln_pop
gen n_g_d = n+0.05
gen ln_n_g_d = ln(n_g_d)
(4,361 missing values generated)
(4,497 missing values generated)
(4,536 missing values generated)
(4,536 missing values generated)
(4,543 missing values generated)
tsline n_g_d if country == "ARGENTINA", legend(off)
tsline ln_n_g_d if country == "ARGENTINA", legend(off)
Solow relationships
tw (sc ln_gdp ln_s if country == "ARGENTINA")(lfit ln_gdp ln_s if country == "ARGENTINA"), ytitle("Ln GDP per capita") xtitle("Ln investment rate") legend(off)
tw (sc ln_gdp ln_n_g_d if country == "ARGENTINA")(lfit ln_gdp ln_n_g_d if country == "ARGENTINA"), ytitle("Ln GDP per capita") xtitle("Ln (adjusted) population growth") legend(off)
reg ln_gdp ln_s ln_n_g_d year if country=="ARGENTINA"
Source | SS df MS Number of obs = 50
-------------+---------------------------------- F(3, 46) = 107.52
Model | 1.29579293 3 .431930976 Prob > F = 0.0000
Residual | .184798648 46 .004017362 R-squared = 0.8752
-------------+---------------------------------- Adj R-squared = 0.8670
Total | 1.48059158 49 .030216155 Root MSE = .06338
------------------------------------------------------------------------------
ln_gdp | Coefficient Std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
ln_s | .6133598 .0619973 9.89 0.000 .4885657 .7381539
ln_n_g_d | .2403555 .3938393 0.61 0.545 -.5524018 1.033113
year | .0105882 .0009174 11.54 0.000 .0087415 .0124349
_cons | -12.92954 1.303472 -9.92 0.000 -15.55329 -10.30578
------------------------------------------------------------------------------
Stationarity
Autocorrelation
quietly reg ln_gdp ln_s ln_n_g_d year if country=="ARGENTINA"
estat dwatson
Durbin–Watson d-statistic( 4, 50) = .6080562
quietly reg ln_gdp ln_s ln_n_g_d year if country=="ARGENTINA"
predict residuals, resid
reg residuals L.residuals ln_s ln_n_g_d year if country=="ARGENTINA", robust
(4,598 missing values generated)
Linear regression Number of obs = 49
F(4, 44) = 10.71
Prob > F = 0.0000
R-squared = 0.4931
Root MSE = .04612
------------------------------------------------------------------------------
| Robust
residuals | Coefficient std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
residuals |
L1. | .7288615 .1275947 5.71 0.000 .4717112 .9860118
|
ln_s | -.028319 .0387966 -0.73 0.469 -.1065084 .0498705
ln_n_g_d | -.3001921 .2975551 -1.01 0.319 -.899875 .2994908
year | -.0003632 .0007268 -0.50 0.620 -.001828 .0011015
_cons | -.020574 .928431 -0.02 0.982 -1.891704 1.850556
------------------------------------------------------------------------------
Dynamic models: DL and ARDL
reg ln_gdp L.ln_gdp ln_s L.ln_s ln_n_g_d L.ln_n_g_d year if country=="ARGENTINA"
Source | SS df MS Number of obs = 49
-------------+---------------------------------- F(6, 42) = 122.26
Model | 1.34194452 6 .22365742 Prob > F = 0.0000
Residual | .076834208 42 .001829386 R-squared = 0.9458
-------------+---------------------------------- Adj R-squared = 0.9381
Total | 1.41877873 48 .02955789 Root MSE = .04277
------------------------------------------------------------------------------
ln_gdp | Coefficient Std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
ln_gdp |
L1. | .7637508 .1039746 7.35 0.000 .5539215 .9735801
|
ln_s |
--. | .4114097 .0711918 5.78 0.000 .2677388 .5550806
L1. | -.2527254 .0903789 -2.80 0.008 -.4351175 -.0703333
|
ln_n_g_d |
--. | -.3166049 .2830918 -1.12 0.270 -.8879073 .2546974
L1. | -.1337107 .2680749 -0.50 0.621 -.6747077 .4072863
|
year | .0017664 .001416 1.25 0.219 -.0010912 .004624
_cons | -3.016845 1.641976 -1.84 0.073 -6.330487 .2967974
------------------------------------------------------------------------------
predict residuals2, resid
reg residuals2 L.residuals2 L.ln_gdp ln_s L.ln_s ln_n_g_d L.ln_n_g_d year if country=="ARGENTINA", robust
(4,759 missing values generated)
Linear regression Number of obs = 48
F(7, 40) = 0.90
Prob > F = 0.5181
R-squared = 0.1434
Root MSE = .04017
------------------------------------------------------------------------------
| Robust
residuals2 | Coefficient std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
residuals2 |
L1. | .4839755 .2216551 2.18 0.035 .0359939 .9319572
|
ln_gdp |
L1. | -.2079155 .1544943 -1.35 0.186 -.5201601 .1043291
|
ln_s |
--. | .0037256 .0556342 0.07 0.947 -.1087152 .1161665
L1. | .1225779 .1140977 1.07 0.289 -.1080221 .3531778
|
ln_n_g_d |
--. | .0761732 .2994838 0.25 0.801 -.5291061 .6814526
L1. | .0340505 .2071774 0.16 0.870 -.3846706 .4527715
|
year | .0021741 .0018375 1.18 0.244 -.0015397 .005888
_cons | -2.467785 2.344272 -1.05 0.299 -7.205735 2.270166
------------------------------------------------------------------------------
reg D.ln_gdp L.ln_gdp ln_s L.ln_s ln_n_g_d L.ln_n_g_d year if country=="ARGENTINA"
Source | SS df MS Number of obs = 49
-------------+---------------------------------- F(6, 42) = 8.34
Model | .091551782 6 .01525863 Prob > F = 0.0000
Residual | .076834208 42 .001829386 R-squared = 0.5437
-------------+---------------------------------- Adj R-squared = 0.4785
Total | .16838599 48 .003508041 Root MSE = .04277
------------------------------------------------------------------------------
D.ln_gdp | Coefficient Std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
ln_gdp |
L1. | -.2362492 .1039746 -2.27 0.028 -.4460785 -.0264199
|
ln_s |
--. | .4114097 .0711918 5.78 0.000 .2677388 .5550806
L1. | -.2527254 .0903789 -2.80 0.008 -.4351175 -.0703333
|
ln_n_g_d |
--. | -.3166049 .2830918 -1.12 0.270 -.8879073 .2546974
L1. | -.1337107 .2680749 -0.50 0.621 -.6747077 .4072863
|
year | .0017664 .001416 1.25 0.219 -.0010912 .004624
_cons | -3.016845 1.641976 -1.84 0.073 -6.330487 .2967974
------------------------------------------------------------------------------
Random walks
use "http://www.principlesofeconometrics.com/poe5/data/stata/spurious.dta", clear
gen time = _n
tsset time
label variable rw1 "Random walk 1"
label variable rw2 "Random walk 2"
Time variable: time, 1 to 700
Delta: 1 unit
tsline rw1 rw2, ytitle("Variables under study")
tw (sc rw1 rw2) (lfit rw1 rw2), legend(off) ytitle("Randon walk 1") xtitle("Randon walk 2")
regress rw1 rw2
Source | SS df MS Number of obs = 700
-------------+---------------------------------- F(1, 698) = 1667.65
Model | 122116.557 1 122116.557 Prob > F = 0.0000
Residual | 51112.3314 698 73.2268359 R-squared = 0.7049
-------------+---------------------------------- Adj R-squared = 0.7045
Total | 173228.888 699 247.823874 Root MSE = 8.5573
------------------------------------------------------------------------------
rw1 | Coefficient Std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
rw2 | .8420412 .0206196 40.84 0.000 .8015572 .8825251
_cons | 17.81804 .6204776 28.72 0.000 16.59981 19.03627
------------------------------------------------------------------------------
tsline D.rw1 D.rw2, ytitle("Variables under study")
tw (sc D.rw1 D.rw2) (lfit D.rw1 D.rw2), legend(off) ytitle("First difference in Randon walk 1") xtitle("First difference in Randon walk 2")
regress D.rw1 D.rw2, robust
Linear regression Number of obs = 699
F(1, 697) = 0.47
Prob > F = 0.4914
R-squared = 0.0008
Root MSE = .98434
------------------------------------------------------------------------------
| Robust
D.rw1 | Coefficient std. err. t P>|t| [95% conf. interval]
-------------+----------------------------------------------------------------
rw2 |
D1. | .027461 .0398923 0.69 0.491 -.0508624 .1057844
|
_cons | .0438678 .0371485 1.18 0.238 -.0290686 .1168043
------------------------------------------------------------------------------
Unit root/random walk tests
dfuller rw1
Dickey–Fuller test for unit root Number of obs = 699
Variable: rw1 Number of lags = 0
H0: Random walk without drift, d = 0
Dickey–Fuller
Test -------- critical value ---------
statistic 1% 5% 10%
--------------------------------------------------------------
Z(t) -1.971 -3.430 -2.860 -2.570
--------------------------------------------------------------
MacKinnon approximate p-value for Z(t) = 0.2993.
dfuller D.rw1
Dickey–Fuller test for unit root Number of obs = 698
Variable: D.rw1 Number of lags = 0
H0: Random walk without drift, d = 0
Dickey–Fuller
Test -------- critical value ---------
statistic 1% 5% 10%
--------------------------------------------------------------
Z(t) -25.631 -3.430 -2.860 -2.570
--------------------------------------------------------------
MacKinnon approximate p-value for Z(t) = 0.0000.
Random walks in the Solow model?
use "https://github.com/quarcs-lab/data-open/raw/master/ede/Macro_PEBLIF.dta", clear
xtset nwbcode year
Panel variable: nwbcode (unbalanced)
Time variable: year, 1950 to 2000
Delta: 1 unit
gen ln_gdp = ln(rgdpch)
gen ln_s = ln(ki)
gen ln_pop = ln(pop)
gen L1_ln_pop = L.ln_pop
gen n = ln_pop - L1_ln_pop
gen n_g_d = n+0.05
gen ln_n_g_d = ln(n_g_d)
(4,420 missing values generated)
(4,368 missing values generated)
(4,361 missing values generated)
(4,497 missing values generated)
(4,536 missing values generated)
(4,536 missing values generated)
(4,543 missing values generated)
tsline ln_gdp if country == "ARGENTINA", ytitle("Ln GDP per capita") legend(off)
tsline ln_s if country == "ARGENTINA", ytitle("Ln Investment share") legend(off)
tsline ln_n_g_d if country == "ARGENTINA", ytitle("Ln adj. population growth") legend(off)
dfuller ln_gdp if country == "ARGENTINA"
Dickey–Fuller test for unit root Number of obs = 50
Variable: ln_gdp Number of lags = 0
H0: Random walk without drift, d = 0
Dickey–Fuller
Test -------- critical value ---------
statistic 1% 5% 10%
--------------------------------------------------------------
Z(t) -1.368 -3.580 -2.930 -2.600
--------------------------------------------------------------
MacKinnon approximate p-value for Z(t) = 0.5974.
dfuller ln_s if country == "ARGENTINA"
Dickey–Fuller test for unit root Number of obs = 50
Variable: ln_s Number of lags = 0
H0: Random walk without drift, d = 0
Dickey–Fuller
Test -------- critical value ---------
statistic 1% 5% 10%
--------------------------------------------------------------
Z(t) -3.036 -3.580 -2.930 -2.600
--------------------------------------------------------------
MacKinnon approximate p-value for Z(t) = 0.0317.
dfuller ln_n_g_d if country == "ARGENTINA"
Dickey–Fuller test for unit root Number of obs = 49
Variable: ln_n_g_d Number of lags = 0
H0: Random walk without drift, d = 0
Dickey–Fuller
Test -------- critical value ---------
statistic 1% 5% 10%
--------------------------------------------------------------
Z(t) -3.853 -3.587 -2.933 -2.601
--------------------------------------------------------------
MacKinnon approximate p-value for Z(t) = 0.0024.