Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Nick Cox <n.j.cox@durham.ac.uk> |
To | "'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu> |
Subject | st: RE: RE: RE: correlation, panel data |
Date | Thu, 14 Oct 2010 12:08:55 +0100 |
Put -capture corr- rather than -corr-. This rather underlines that if some of your panels are very short, then those correlations will be based on very few values, with consequent problems. For example, a correlation based on two distinct y and two distinct x points will necessarily be 1 or -1. A correlation based on no or one point cannot be calculated. Nick n.j.cox@durham.ac.uk Biljana Dlab I tried to adjust the code, and am getting good results for the first two companies, but then it stops. This is how I did it: . tsset gvkey_n fyear panel variable: gvkey_n (unbalanced) time variable: fyear, 1971 to 2001, but with gaps delta: 1 unit . levelsof gvkey_n, local(levels) . gen corr=. (7609 missing values generated) . qui foreach l of local levels { . corr cf r_d if gvkey_n==`l' . replace corr=r(rho) if gvkey_n==`l' . } no observations r(2000); Nick Cox One possibility without installing anything is to modify this recipe: sysuse auto levelsof rep78, local(levels) gen corr = . qui foreach l of local levels { corr mpg weight if rep78 == `l' replace corr = r(rho) if rep78 == `l' } * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/