在SAS中,可以使用以下代码示例按组保留随机行:
/* 创建示例数据集 */
data have;
input group $ id;
datalines;
A 1
A 2
A 3
B 4
B 5
B 6
C 7
C 8
C 9
;
run;
/* 按组保留随机行 */
proc sort data=have out=sorted;
by group;
run;
data want;
set sorted;
by group;
if first.group then count=0;
count+1;
if count<=2 then output;
run;
上述代码中,首先通过PROC SORT
按组对数据集进行排序,然后使用DATA
步骤按组保留随机行。在DATA
步骤中,使用BY
语句按组排序,并使用IF
语句和FIRST.
系统变量来保留每个组的前两行。
以上代码将保留每个组的前两行,其余行将被删除。
下一篇:按组保留直到最后一个值的出现