0

我有这种数据表(它只是大型数据集的一部分),是我在 SAS studio 中使用 PROC MEANS 和 PROC SQL 创建的。我想在这里添加几个新列,显示每年的 pct_missing。因为,现在,我们在多行中有相同的变量,因为我按年份对其进行了分组。有什么办法可以使用循环添加这些列?

当前数据(原始数据表):

在此处输入图像描述

我期望拥有的:( 想添加所有新列 pct_missing_2004 ~ pct_missing_2018 显示每年变量的 pct_missing)(下面写的 pct_missing_2004, 2005 的值只是一个例子!!!)

无论如何我们可以使用循环或SAS中的任何其他好方法来做到这一点!?

4

1 回答 1

1

我不是 100% 我确定你想要什么,但也许转置可能会有所帮助。

看看下面这个例子。

data have; 
 input 
    year 4. 
    variable $1.
    pct_missing 3.;
 CARDS;
2011A100
2011B90
2010A80
2010B70
2010C60
 ;
 run; 
 
 proc sort 
  data=have;
  by variable; 
 run; 
 
 
 Proc Transpose
    data=have
    out=want (drop=_name_)
    prefix=pct_missing;
    id year;
    var  pct_missing;
    by variable ; 
 run;

安卓

于 2021-01-27T20:39:30.463 回答