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

From |
"eka.selez@gmail.com" <eka.selez@gmail.com> |

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

Subject |
Re[4]: st: creating a variable using -if-? programming needed? |

Date |
Fri, 16 May 2008 07:38:14 -0700 |

Now it works fine! thanks again! Eka > The code looks good. Perhaps the data is not quite as it should be. > If you want to keep all the data, then you can still segregate the > spouses. > In your family of 5, I guess this > spouse1 spouse2 > 1 1 . > 2 . . > 3 . 3 > 4 . . > 5 . . > gen not_spouse = !((spouse1 < .) | (spouse2 < .)) > bysort site family (not_spouse) : gen partner_income = personal[3 - _n] > if !not_spouse > There are two states to not_spouse. not_spouse is true (1) if somebody > is not a spouse and false (0) if somebody is. > Sorting on -non_spouse- within a family sorts all the 0s to the first > observations in each family. > Your set-up may differ, but something like this should still be > workable. > Nick > n.j.cox@durham.ac.uk > Ekaterina Selezneva > for me your solution with "[3 - _n]" is the most elegant and most > easily understood. > But how to handle the situation if I have data on all the household > members, and let's say, I want to keep them all. I have two variables > identifying a couple within each household: "spouse1" and "spouse2".. > so, if > there is a household composed of 5 members, and N1 and N3 > are married, then spouse1=1 and spouse2=3. > I would do something like > #delimit; > bysort site censusd family : gen partner_income = personal[spouse1] > if person==spouse2; > bysort site censusd family : replace partner_income = > personal[spouse2] if person==spouse1; > it works fine if both partners are present in the sample, but if only > one is in, the partner_income variable is replaced sometimes with the > individual > income of the individual and sometimes with the missing value. > What could be wrong with the code? > Thursday, May 15, 2008, 4:24:34 PM, you wrote: >> Using the same assumption of a Noah's ark situation in which everyone > is >> paired off, with no dependents, in-laws, etc., there are other minor >> variations on Scott's theme. >> bysort site family: gen partner_income = cond(_n == 1, personal[2], >> personal[1]) >> bysort site family: gen partner_income = personal[3 - _n] >> I am fond of the second. If it looks puzzling, just go through the two >> cases. If _n is 1, then 3 - _n is 2, and vice versa. >> The key underlying principle, if it is not familiar, is that under > -by:- >> _n is interpreted within groups, not within the entire dataset. There > is >> a leisurely tutorial >> at >> <http://www.stata-journal.com/sjpdf.html?articlenum=pr0004> >> N.B. this is in the public domain. >> Nick >> n.j.cox@durham.ac.uk >> Scott Merryman >> What defines a partner? Someone within the same two-person family? >> Perhaps something like this: >> clear >> input site family person personal_labor_income >> 1 1 1 2000 >> 1 1 2 2300 >> 1 2 1 200 >> 1 2 3 3000 >> 2 10 4 3400 >> 2 10 5 3500 >> end >> bysort site family : gen partner_income = cond(_n ==1, >> personal[_n+1],personal[_n-1]) >> Ekaterina Selezneva >>> I have a dataset with some information on a sample of married >>> couples. For identifying a single person, one needs to know a >>> "site"-number, "family"-number withing the site, and then the >>> "person"-number within the family. As this is a subsample of some >>> bigger dataset, so not all sites/families/persons are presented in >>> it. Let's say, something like: >>> >>> site family person personal_labor_income >>> 1 1 1 2000 >>> 1 1 2 2300 >>> 1 2 1 200 >>> 1 2 3 3000 >>> 2 10 4 3400 >>> 2 10 5 3500 >>> >>> THE PROBLEM: I need to create a variable containing the "personal >>> labor income" of partner. >>> >>> Unfortunately, I've spent a day, and havn't >>> succeded to solve this seemingly simple problem. I will be grateful >> for >>> any hints. > * > * 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/ -- Best regards, Ekaterina mailto:eka.selez@gmail.com * * 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/ _____________________________________________________________________ Mensaje analizado y protegido por Telefonica Empresas * * 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/ Privileged, confidential or patient identifiable information may be contained in this message. This information is meant only for the use of the intended recipients. If you are not the intended recipient, or if the message has been addressed to you in error, do not read, disclose, reproduce, distribute, disseminate or otherwise use this transmission. Instead, please notify the sender by reply e-mail, and then destroy all copies of the message and any attachments. * * 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/

**References**:**st: creating a variable using -if-? programming needed?***From:*Ekaterina Selezneva <eka.selez@gmail.com>

**Re: st: creating a variable using -if-? programming needed?***From:*"Scott Merryman" <scott.merryman@gmail.com>

**RE: st: creating a variable using -if-? programming needed?***From:*"Nick Cox" <n.j.cox@durham.ac.uk>

**Re[2]: st: creating a variable using -if-? programming needed?***From:*Ekaterina Selezneva <eka.selez@gmail.com>

**RE: Re[2]: st: creating a variable using -if-? programming needed?***From:*"Nick Cox" <n.j.cox@durham.ac.uk>

- Prev by Date:
**RE: Re[2]: st: creating a variable using -if-? programming needed?** - Next by Date:
**st: Messages again and again** - Previous by thread:
**Re[4]: st: creating a variable using -if-? programming needed?** - Next by thread:
**RE: Re[2]: st: creating a variable using -if-? programming needed?** - Index(es):

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