【问题标题】:Panel regression in SAS using subgroups in data set使用数据集中的子组在 SAS 中进行面板回归
【发布时间】:2016-07-10 21:26:23
【问题描述】:

以下是我的数据集示例:

在变量“国家”中,我有属于 A 组和 B 组的国家(虚拟变量)。

我想在 SAS 中对这些国家/地区的回报进行面板回归:

模型返回 = 事件(0,1)

添加条件,例如,

我只想考虑属于 A 组的国家,并且是在 2000 年之前的时期。

有没有办法使用当前数据集在 SAS 中进行编码?

【问题讨论】:

    标签: sas regression


    【解决方案1】:

    SAS/ETS 提供了对面板数据建模的proc panel 过程。请注意,每个横截面必须具有相同的时间段。如果不这样做,则需要事先使用proc timeseriesproc expand 准备数据。

    读入数据后,您将使用proc panelwhere 语句来构建模型。 ID 语句在 proc panel 中有点不同。它首先需要横截面变量,然后是时间 ID 变量。

    proc panel data=have;
        where GroupA = 1
              AND year(date) < 2000;
    
        id country date;
        class event;
    
        model Returns = Event;
    run;
    

    【讨论】:

    • 感谢斯图!我知道这超出了我的问题范围,但我想知道 - 使用回归而不是说以下内容会有任何根本的区别/优势或劣势:proc panel data=have;身份证国家日期;模型返回 = groupA Event Pre-2000;跑; ?此外,这里的 CLASS 语句的功能究竟是什么?我看过指南,但无法理解它的上下文相关性。
    • 如果您确实将 Pre-2000 作为变量包括在内,您将不会过滤您的数据。相反,您将为 2000 年之前的数据创建一个参数估计值,本质上是确定这些事件的平均“调整因子”(如果它是 2000 年之前或之后)。这可能很有用,具体取决于您需要的模型类型. Class 语句告诉 SAS 变量是二元的或分类的。您在这里不一定需要它,因为二进制变量只取 2 个值,但这样做是个好习惯。它还可以使读取参数估计值更容易一些。
    猜你喜欢
    • 1970-01-01
    • 2016-01-01
    • 2017-12-07
    • 2019-01-19
    • 2015-07-21
    • 2014-06-02
    • 1970-01-01
    • 2019-09-04
    • 1970-01-01
    相关资源
    最近更新 更多