【发布时间】:2015-06-04 06:43:40
【问题描述】:
我有一个数据集have,其数值列x。我想随机选择任意两个不同的点,然后计算它们之间的距离。
如果我只做一次,那么我只需使用proc surveyselect 生成另一个具有两个 obs 的数据集。
proc surveyselect data=have out=want method=srs
sampsize=2;
run;
data out;
set have end=eof;
dist = abs(dif1(x));
if eof;
run;
但是我怎样才能多次执行,比如 1000000?每次以相等的概率选择两个点,最后我有 1000000 条 dist 记录。
【问题讨论】:
-
目前我在宏中使用 %do 循环来执行此操作。但这太慢了;
标签: sas