我有一个面板数据集,其中包含针对独特家庭ID的产品购买,并且需要生成虚拟变量"品牌忠诚"如果同一品牌在前一个时期由家庭购买,则等于1。我的时期不是同等时间。对于一些家庭,它可以是1周,对于其他家庭 - 10周。这段代码听起来是对的吗?:
panid - unique household id
l5 - brand name
loy - wanted dummy
bysort panid week: egen loy=1 if l5=l5[_n-1]
答案 0 :(得分:3)
我假设变量周的单位是几周。在这种情况下,您可以输入
tsset panid week
by panid: gen byte loy = ( L.l5 == l5 ) if !missing(L.l5,l5) & _n > 1