SAS中不平衡数据集的滚动窗口模型

神流

我有以下形式(简化)的不平衡面板数据集:

data have;
input ID YEAR EARN LAG_EARN;
datalines;
1       1960      450      .
1       1961      310      450
1       1962      529      310
2       1978      10       .
2       1979      15       10
2       1980      8        15
2       1981      10       8
2       1982      15       10
2       1983      8        15
2       1984      10       8
3       1972      1000     .
3       1973      1599     1000
3       1974      1599     1599
;
run;​ 

我现在想为每个ID估算以下模型:

proc reg;
    by ID;
    EARN = LAG_EARN;
run;

但是,我想对某些大小的滚动窗口执行此操作。例如,对于大小为2的窗口,该窗口应仅包含非空观察值。例如,对于公司A,该窗口从1961年开始适用,因此只能使用一次(因为1961年之后仅一年,并且该窗口的大小应为2)。

最后,我想获得一个包含年份列和行的表格。该表应指示以下内容:对于A公司,已经执行了一次回归模型(窗口大小为2)。可用年的数量仅允许对该模型进行一次估计。换句话说,在1962年,回归模型的系数基于前2年的窗口具有X值。将相同的逻辑应用于其他两家公司,可以得到下表。“ X”代表基于两年窗口的企业A / B / C在特定年份的估计系数值,而“ n”代表不存在该值:

data want;
input ID 1962 1974 1980 1981 1982 1983 1984;
datalines;
1 X n n n n n n
2 n n X X X X X      
3 n X n n n n n 
;
run;​ 

我不知道该如何执行。此外,我想创建一个宏,使我可以估计不同的滚动窗口模型,同时仍然创建类似的输出数据帧。我将不胜感激,因为我已经花了很多时间了。

斯图·舒图科夫斯基

试试这个宏。仅当您指定的滞后值不丢失时才输出。

%macro lag(data=, out=, window=);

    data _want_;
        set &data.;
        by ID;

        LAG_EARN = lag&window.(earn);

        if(first.ID) then call missing(lag_earn);

        if(NOT missing(lag_earn));
    run;

    proc sort data=_want_;
        by year id;
    run;

    proc transpose data=_want_
                   out=&out.(drop=_NAME_);
        by ID notsorted;
        id year;
        var lag_earn;
    run;

    proc sort data=&out.;
        by id;
    run;
%mend;
%lag(data=have, out=want, window=1);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

不平衡训练数据集和回归模型

来自分类Dev

在Spark MLlib中处理不平衡的数据集

来自分类Dev

如何处理R中不平衡的数据集?

来自分类Dev

如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

来自分类Dev

如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

来自分类Dev

重新采样不平衡数据集的数据框

来自分类Dev

大型不平衡数据的机器学习模型建议

来自分类Dev

如何确定不平衡数据集的class_weights

来自分类Dev

数据集不平衡时的连接优化

来自分类Dev

如何在sklearn中对不平衡数据集执行交叉验证

来自分类Dev

如何平衡不平衡的面板数据?

来自分类Dev

使用libSVM的SVM中的数据不平衡

来自分类Dev

根据不平衡数据在ggplot中创建重叠直方图

来自分类Dev

子集不平衡的面板数据集以在R中至少具有2个连续观察值

来自分类Dev

如何将缺失的NA包括在不平衡面板数据集的R data.frame中?

来自分类Dev

使用TensorFlow训练不平衡数据

来自分类Dev

从长到宽的不平衡数据帧

来自分类Dev

如何通过训练和交叉验证集正确地分割不平衡数据集

来自分类Dev

iOS 8中的通话不平衡

来自分类Dev

Chrome中不平衡的CSS列

来自分类Dev

Matlab中不平衡的Anova

来自分类Dev

DEoptim中的堆栈不平衡

来自分类Dev

C5.0树模型上的数据高度不平衡

来自分类Dev

C5.0树模型上的数据高度不平衡

来自分类Dev

朴素贝叶斯:不平衡的测试数据集

来自分类Dev

不平衡的数据集-如何通过网格搜索优化超参数?

来自分类Dev

二进制分类情况下数据集不平衡的问题

来自分类Dev

将不整洁和不平衡的数据集从宽范围重塑到长范围

来自分类Dev

初始训练是否适用于不平衡的数据集?(Tensorflow)

Related 相关文章

  1. 1

    不平衡训练数据集和回归模型

  2. 2

    在Spark MLlib中处理不平衡的数据集

  3. 3

    如何处理R中不平衡的数据集?

  4. 4

    如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

  5. 5

    如何通过svmlight中可用的不平衡训练数据集来提供平衡训练的成本?

  6. 6

    重新采样不平衡数据集的数据框

  7. 7

    大型不平衡数据的机器学习模型建议

  8. 8

    如何确定不平衡数据集的class_weights

  9. 9

    数据集不平衡时的连接优化

  10. 10

    如何在sklearn中对不平衡数据集执行交叉验证

  11. 11

    如何平衡不平衡的面板数据?

  12. 12

    使用libSVM的SVM中的数据不平衡

  13. 13

    根据不平衡数据在ggplot中创建重叠直方图

  14. 14

    子集不平衡的面板数据集以在R中至少具有2个连续观察值

  15. 15

    如何将缺失的NA包括在不平衡面板数据集的R data.frame中?

  16. 16

    使用TensorFlow训练不平衡数据

  17. 17

    从长到宽的不平衡数据帧

  18. 18

    如何通过训练和交叉验证集正确地分割不平衡数据集

  19. 19

    iOS 8中的通话不平衡

  20. 20

    Chrome中不平衡的CSS列

  21. 21

    Matlab中不平衡的Anova

  22. 22

    DEoptim中的堆栈不平衡

  23. 23

    C5.0树模型上的数据高度不平衡

  24. 24

    C5.0树模型上的数据高度不平衡

  25. 25

    朴素贝叶斯:不平衡的测试数据集

  26. 26

    不平衡的数据集-如何通过网格搜索优化超参数?

  27. 27

    二进制分类情况下数据集不平衡的问题

  28. 28

    将不整洁和不平衡的数据集从宽范围重塑到长范围

  29. 29

    初始训练是否适用于不平衡的数据集?(Tensorflow)

热门标签

归档