
From  "Anna Lehman" <annallehman@hotmail.com> 
To  statalist@hsphsun2.harvard.edu 
Subject  Re:st: reorganizing data 
Date  Wed, 06 Sep 2006 08:27:32 0500 
From: n j cox <n.j.cox@durham.ac.uk>_________________________________________________________________
ReplyTo: statalist@hsphsun2.harvard.edu
To: statalist@hsphsun2.harvard.edu
Subject: Re:st: reorganizing data
Date: Mon, 04 Sep 2006 15:25:01 +0100
This should work with toy datasets. If your identifiers are
long, or your number of observations is large, the information
won't fit into a string variable, so the lines mentioning
"Others" should be deleted.
gen Others = ""
levelsof Person, local(Persons)
qui foreach P of local Persons {
levelsof City if Person == "`P'", local(Cities)
local which
foreach C of local Cities {
levels Person if Person != "`P'" & City == "`C'", /// local(work) clean
local which : list which  work
}
noi di "`P': `which'"
replace Others = "`which'" if Person == "`P'"
}
Nick
n.j.cox@durham.ac.uk
Anna Lehman
I have a dataset with the following structure:
City Person_id
A 1
A 2
B 1
B 5
C 1
C 5
C 4
D 8
D 1
I would like to obtain the following:
for each and every person, a list with the people that have apartments in
the same city (independently of which city). For example, for person 1, this
list would be: 2, 5 4 and 8. And for person 5 the list would be: 1 .
Can you think of a relatively easy way of acomplishing this?
*
* 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–2016 StataCorp LP  Terms of use  Privacy  Contact us  What's new  Site index 