【发布时间】:2014-09-25 18:05:22
【问题描述】:
我有一个频率权重的 SAS 数据集。在数据集中,我们还有一个用于场景区分的组变量。对于第 1 组,我想复制我的记录权重 1 次,第 2 组中的观察值复制 2 次,依此类推。在 SAS 中有没有简单的方法来做到这一点?
【问题讨论】:
-
@Chuck 感谢您指出这一点。
标签: sas
我有一个频率权重的 SAS 数据集。在数据集中,我们还有一个用于场景区分的组变量。对于第 1 组,我想复制我的记录权重 1 次,第 2 组中的观察值复制 2 次,依此类推。在 SAS 中有没有简单的方法来做到这一点?
【问题讨论】:
标签: sas
我不确定这是否是您要求的。提供一个简单的工作示例(带有示例数据)可能会使问题更清楚。
也就是说,如果您希望根据变量之一(下面的group)中的整数值复制记录,您可以使用do loop 和显式output statement .
/* Some dmmy data */
data inData;
do group = 1 to 5;
weight = ranuni(0);
output;
end;
run;
/* Output each observation group times */
data outData (drop = _i);
set inData;
do _i = 1 to group;
output;
end;
run;
【讨论】: