SPSS 中的滞后函数

Lag function in SPSS

为了完成我的硕士论文,我必须使用数据库来建立逻辑回归模型。我的模型的变量之一是 NEWS,这应该是一个虚拟变量,如果公司必须在给定年份发布负净收入(坏消息),这应该等于 1,属于本研究的时间段( 2017 年、2018 年和 2019 年),而前一年的净收入仍为正(好消息)。否则哑元等于 0。 现在我的教授说,当一家公司在三年中的某一年的净收入为负时,我必须制作一个等于 1 的虚拟机,否则为 O。那部分我明白了。但后来她又说我必须使用滞后函数才能查明公司在负净收入的前一年是否有正净收入。那部分我不明白。我真的不明白我应该如何在 SPSS 的帮助下做到这一点。 您可以在下面找到我必须处理的一小部分数据。

Company's number   Year        Net income       Dummy(net income negative)

      899999256    2017          222884,00                    0

      899999256    2018          237387,00                    0

      899999256    2019          314501,00                    0

      899998959    2017          -22414,00                    1

      899998959    2018          -10834,00                    1

      899998959    2019            -365,00                    1

      899993714    2017             453,00                    0

      899993714    2018             152,00                    0

      899993714    2019             -178,00                   1

在这种情况下,公司一和公司二的最终虚拟变量 (NEWS) 为 0。但是公司三的最终虚拟变量为 1,因为他们在 2018 年的净收入为正,2019 年的净收入为负.

现在我必须为超过 170,000 家公司做这件事,所以有一个语法代码会让这件事变得容易得多,这就是为什么我请求你们的帮助。

提前致谢!

我在网上查看了如何执行 LAG 函数,但 none 这些解决方案确实解决了我的问题。我希望你们中的一个能帮助我 :)

以下代码将使用 lag 函数来标记同一公司净收入为负而前一年为正的年份:

sort cases by CompanyNumber Year.
compute dummy=0.
if company=lag(company) and NetIncome<0 and lag(NetIncome)>0 dummy=1.
exe.