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]
Re: AW: st: Panelvar
From
Natalie Trapp <[email protected]>
To
[email protected]
Subject
Re: AW: st: Panelvar
Date
Fri, 06 Aug 2010 10:53:09 +0200
I thought my code could also work for generating an individual variable
for Tobias brand names, but I noticed encode is sufficient already.
I used it for my panel data set to generate a unique identification for
surveyed European farms depending on certain characteristics such as
region, sub region, farm type, farm size, etc. but it is redundant in
the brand names case. Sorry!
On 8/6/2010 10:21 AM, Martin Weiss wrote:
<>
I think -encode- is all Toby needs:
*************
clear*
inp str11 brand int year
firstbrand 1990
firstbrand 1991
firstbrand 1992
secondbrand 1990
secondbrand 1991
secondbrand 1992
end
list, noo
//does not work
cap noi xtset brand year
//does work...
encode brand, gen(numericbrand)
xtset numericbrand year
*************
What is the rest of your code meant to do, Natalie?
HTH
Martin
-----Ursprüngliche Nachricht-----
Von: [email protected]
[mailto:[email protected]] Im Auftrag von Natalie Trapp
Gesendet: Freitag, 6. August 2010 10:12
An: [email protected]
Betreff: Re: st: Panelvar
On 8/6/2010 10:00 AM, Hobst wrote:
Hello
I have a panaldata set. I want to use the brandnames as the panel ID
variable, but obviously Stata doesnt accpet a string variable as the panel
ID var. How can i create a variable that defines a unique numbre for every
brand name so i can use it as the panel ID var for my paneldata?
Thanks a lot for your help.
Regards
Toby
Hi Toby,
I would first encode the string variable:
*encode varname, generate(newvarname)
then I would use "forvalues"
*sort newvarname
*gen individual = .
*gen newvarname_lag = newvarname[_n-1]
*local number = 1
*replace individual = `number' in 1
*local anzahl = _N
*forvalues i = 2/`anzahl' {
*replace individual = `number' + 1 in `i'
*replace individual = `number' if newvarname== newvarname_lag in `i'
*local number = individual[`i']
*}
*drop newvarname_lag
I am sorry, there is most probably a much more simple way to do it, but
I wrote this when I had to identify individuals over more than one
variable. I hope this helps you.
regards,
natalie
*
* 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/