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

# RE: st: Creating household id for groups of persons

 From Nick Cox To "'statalist@hsphsun2.harvard.edu'" Subject RE: st: Creating household id for groups of persons Date Wed, 6 Jul 2011 12:27:25 +0100

How do you know that the resulting groups would be disjoint?

Nick
n.j.cox@durham.ac.uk

Hans Meier

No, I wished it was that easy.

With
egen group = group(contract)    you get:

contract |    id       |  household_id
___________________________
123        |   1        |   1  <-
123        |   2        |   1
123        |   3        |   1
456        |   4        |   2
456        |   5        |   2
678        |   1        |   3  <-

As you can see, now id "1" has two different household id's, "1" at contract "123" and "3" at contract "678".

But I want to put all id's who are connected in any contract in the same household, so that the household_id in contract "678" is also "1", because id "1" already belongs to household "1" from contract "123".

Maybe an example makes it clearer:

Imagine contract "123" beeing a liability-insurance for a mother, father and child (id's 2, 1 and 3), who are household 1.
The father (id 1) also has a car insurance (contract 678), and of course this contract also belongs to household 1.

Von: "Nick Cox" <njcoxstata@gmail.com>

>If I understand this correctly, -contract- is already such an
>identifier. You can use
>
>egen group = group(contract)
>
>to get a tidy equivalent with values 1 up.
>
>Nick
>
>On Wed, Jul 6, 2011 at 8:23 AM, Hans Meier <mr.hans.meier@web.de> wrote:
>
>> I'm trying to create an id-variable for groups of persons.
>>
>> My data looks like this:
>>
>>
>> contract |    id
>> ___________
>> 123        |   1
>> 123        |   2
>> 123        |   3
>> 456        |   4
>> 456        |   5
>> 678        |   1
>>
>> There are different insurance-contracts, and many people (id's) can be part of one contract.
>>
>> Now I need a household id, which groups the people who have contracts together, like this:
>>
>>
>> contract |    id       |  household_id
>> ___________________________
>> 123        |   1        |   1
>> 123        |   2        |   1
>> 123        |   3        |   1
>> 456        |   4        |   2
>> 456        |   5        |   2
>> 678        |   1        |   1
>>
>> The problem is, as you can see in my example, that its's not always the same people having contracts together, like id "1" has the contract "678" alone, but he belongs to household_id "1".
>>
>> How can I create this household id?
>

*
*   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/