0

我有一个面板数据集,由一个 id 变量和一个特定的字符串变量标识,每个时间段(每周)具有不同的值。并非每个 id 每周都会出现(新的可以出现,旧的可以消失)。

当此变量包含特定术语时,我创建了一个虚拟变量,但它仅捕获一周内的一次出现。我想要的是每个 id 都有一个特定的虚拟对象,指示该术语是否至少在一周的出现中包含在字符串变量中。因此,如果在第 34 周 id x 包含该术语,我希望在所有其他周内也有一个假人,显示“1”,因为该术语曾经包含在 id x

我尝试格式化为 anxtset并替换 via F.,但这并没有按预期工作。

4

1 回答 1

1

我认为以下是您想要的,因为如果字符串包含该术语,您已经创建了term设置为 1 的变量,否则(我假设)设置为 0。

by id (time), sort: egen newterm = max(term)
replace term = newterm
drop newterm

by id (time), sort: ...命令将为egen每个单独运行id。将找到每个egen的最大值,因此如果有 1则为 1。termidnewtermterm

于 2016-02-13T01:07:20.170 回答