Statalist The Stata Listserver


[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

st: RE: RE: test for stationarity that accepts the "by" command?


From   "Jason Yackee" <jyackee@law.usc.edu>
To   <statalist@hsphsun2.harvard.edu>
Subject   st: RE: RE: test for stationarity that accepts the "by" command?
Date   Fri, 15 Sep 2006 13:33:55 -0700

I have run into a strange problem with this code.  It works with one
dependent variable, but not others.  Let me past code first, then
explain, then post results.

Here is my modification of Scott's -foreach- loop:

tempfile results
tempname hold
postfile `hold' aa_cow_code pvalue test_stat  using `results'
levelsof aa_cow_code, local(levels)
foreach l of local levels {
	qui dfuller  fdi_inflow_real_combined if aa_cow_code == `l'
	post `hold' (`l') (r(p)) (r(Zt))
	}
postclose `hold'
preserve
use `results', clear
l
restore



"aa_cow_code" is my panel id variable; "fdi_inflow~" is the DV upon
which I want to perform the -dfuller- routine.  When I run the -foreach-
loop using my DV "fdi_inflow_real_combined" (which is simply a
continuous, constant-dollar measure of FDI inflows) the output is as I
would expect -- a chart with predicted probabilities and z-statistics
for each panel id comes up, just as Scott intended.

But when I try to run the -foreach- program with a different dependent
variable -- take here "fdi_inflow_pct_gdp_UN", the -foreach- loop begins
to run, but stops with a message that there are no observations.  In
fact I know there are observations from inspecting and working with the
data, and the second "fdi_inflow~" variable is simply the first variable
expressed as a percent of a country's GDP.  The code also doesn't work
with other versions of the the "fdi_inflow~" variable that I have
constructed.

I've pasted the problematic output below, followed by summaries of the
"good" DV and the troublesome DV.  Any advice is appreciated.  I suppose
the answer is probably obvious, but I should note that I am NOT
mistyping the variable names -- just pasting them directly from another
Stata window.

. tempfile results

. tempname hold

. postfile `hold' aa_cow_code pvalue test_stat  using `results'

. levelsof aa_cow_code, local(levels)
31 40 41 42 51 52 53 70 80 90 91 92 93 94 95 100 101 110 115 130 135 140
145 150 155 160 165 205 
> 235 290 310 316 317 338 339 343 344 345 346 349 350 352 355 359 360
365 366 367 368 369 370 371
>  372 373 395 402 404 411 420 432 433 434 435 436 437 438 439 450 451
452 461 471 475 481 482 48
> 3 484 490 500 501 510 516 517 520 522 530 531 540 541 551 552 553 560
565 570 571 572 580 581 5
> 90 600 615 616 620 625 630 640 645 651 652 660 663 666 670 679 690 692
694 696 698 700 701 702 
> 703 704 705 710 712 732 750 760 770 771 775 780 781 790 800 811 812
816 820 830 835 840 850 910
>  920 940 950

. foreach l of local levels {
  2.         qui dfuller  fdi_inflow_pct_gdp_UN if aa_cow_code == `l'
  3.         post `hold' (`l') (r(p)) (r(Zt))
  4.         }
no observations
r(2000);

end of do-file
r(2000);



. sum  fdi_inflow_real_combined

    Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
fdi_inflow.. |      4664    5.97e+08    2.85e+09  -4.55e+09   5.05e+10

    Variable |       Obs        Mean    Std. Dev.       Min        Max
-------------+--------------------------------------------------------
fdi_inflow.. |      3975     2.00564    5.148409  -82.89212   89.08587





-----Original Message-----
From: owner-statalist@hsphsun2.harvard.edu
[mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Scott
Merryman
Sent: Thursday, September 14, 2006 5:07 PM
To: statalist@hsphsun2.harvard.edu
Subject: st: RE: test for stationarity that accepts the "by" command?

-levelsof- with -foreach- can be used to cycle through the groups and
test
for a unit-root in each one.  You could also use -post- to collect the
results.  For example:

webuse grunfeld,clear
tempfile results
tempname hold
postfile `hold' company pvalue test_stat  using `results'
levelsof company, local(levels)
foreach l of local levels {
	qui dfuller invest if com == `l'
	post `hold' (`l') (r(p)) (r(Zt))
	}
postclose `hold'
preserve
use `results', clear
l
restore


Scott
	

> -----Original Message-----
> From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-
> statalist@hsphsun2.harvard.edu] On Behalf Of Jason Yackee
> Sent: Thursday, September 14, 2006 6:45 PM
> To: statalist@hsphsun2.harvard.edu
> Subject: st: test for stationarity that accepts the "by" command?
> 
> Dear Stata seers,
> 
> I am trying to test for stationarity of cross-sectional time series
data
> for individual cross-sections (countries).  I am aware of xtfisher and
> pescadf as tests that work across unbalanced panels and provide a
single
> statistic for the entire dataset.  But these are weak tests, and I'd
like
> to be able to test individual series by country, in order to see if
most
> individual series show signs of stationarity or unit roots.
> 
> I've tried -by country: dfuller varname-, -by country: pperron
varname-
> and so on with -kpss- and -dfgls- and -levinlin-, but none of these
> commands allow a -by- (or -bysort-) option.
> 
> Might there be another command, of which I am not aware, that is up to
the
> task?  If not, am I left to breaking down my 150-country dataset into
150
> single-country datasets, or by using 150 different -if country-
commands?
> 
> Jason Webb Yackee


*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/

*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index