Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

From |
"Biljana Dlab" <dlab@isb.uzh.ch> |

To |
<statalist@hsphsun2.harvard.edu> |

Subject |
st: RE: RE: RE: RE: RE: correlation, panel data |

Date |
Thu, 14 Oct 2010 15:01:30 +0200 |

With this code just vector of dots is generated. When the loop started, I did not get 2., ... . 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 { . capture corr cf r_d if gvkey_n==`l' . if _rc == 0 { . replace corr=r(rho) if gvkey_n==`l' . } . } . browse Thanks a lot. Best, Biljana -----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Nick Cox Sent: 14 October 2010 14:03 To: 'statalist@hsphsun2.harvard.edu' Subject: st: RE: RE: RE: RE: correlation, panel data tsset gvkey_n fyear levelsof gvkey_n, local(levels) gen corr=. qui foreach l of local levels { capture corr cf r_d if gvkey_n==`l' if _rc == 0 { replace corr=r(rho) if gvkey_n==`l' } } Nick n.j.cox@durham.ac.uk Nick Cox 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. 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/ * * 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/

**Follow-Ups**:**st: RE: RE: RE: RE: RE: RE: correlation, panel data***From:*"Biljana Dlab" <dlab@isb.uzh.ch>

**References**:**st: correlation, panel data***From:*"Biljana Dlab" <dlab@isb.uzh.ch>

**st: RE: correlation, panel data***From:*Nick Cox <n.j.cox@durham.ac.uk>

**st: RE: RE: correlation, panel data***From:*"Biljana Dlab" <dlab@isb.uzh.ch>

**st: RE: RE: RE: correlation, panel data***From:*Nick Cox <n.j.cox@durham.ac.uk>

**st: RE: RE: RE: RE: correlation, panel data***From:*Nick Cox <n.j.cox@durham.ac.uk>

- Prev by Date:
**Re: st: Beginner questions re saving/storing/exporting graphs in Windows** - Next by Date:
**st: RE: RE: RE: RE: RE: RE: correlation, panel data** - Previous by thread:
**st: RE: RE: RE: RE: correlation, panel data** - Next by thread:
**st: RE: RE: RE: RE: RE: RE: correlation, panel data** - Index(es):