【发布时间】:2019-07-11 20:22:27
【问题描述】:
我有一个 SAS 数据集,其中包含一列从 -2000 到 4000 的数字。 我想根据以下条件选择 37 个随机样本。 如果 num 介于 -2000 到 -1000 之间,则从该范围内随机选择 10 个样本, 如果 num 在 -1000 到 0 之间,则从该范围内随机选择 15 个样本, 如果 num 在 0 到 1000 之间,则从这个范围内随机选择 12 个样本,
我尝试了以下方法:
proc surveyselect data=save.table
method=srs n=37 out=save.table_sample seed=1953;
run;
但这会给我从整个人群中随机抽取 37 个样本。我想根据数据范围随机选择。
请帮忙处理 SAS 代码,非常感谢!
【问题讨论】:
-
您是否尝试过每次使用不同的 where 子句运行 3 次?
-
Richard,我提出了一些基本相同的建议。 Where 子句实际上会更干净,因为我们可以完全避免 datastep。