Random 不同随机数

Random 不同随机数,random,sas,numbers,Random,Sas,Numbers,在SAS中,您可以在每个数据步使用种子生成随机数;2个差异数据步骤中的相同种子=2个差异数据步骤中的相同随机数序列 在两个不同的数据步中,从同一个种子中得到两个不同的随机数序列有什么诀窍吗? 谢谢你的提示 以下是答案: 我应该补充一点,我打算在数据步骤中使用相同的分布 有一种方法,我找到了创建一个巨大的随机数文件的方法,并在每个数据步骤中选取这些随机数。 我想知道是否有更聪明的东西:-)看看这个:- /*Using same distribution without changing the s

在SAS中,您可以在每个数据步使用种子生成随机数;2个差异数据步骤中的相同种子=2个差异数据步骤中的相同随机数序列

在两个不同的数据步中,从同一个种子中得到两个不同的随机数序列有什么诀窍吗? 谢谢你的提示

以下是答案: 我应该补充一点,我打算在数据步骤中使用相同的分布

有一种方法,我找到了创建一个巨大的随机数文件的方法,并在每个数据步骤中选取这些随机数。 我想知道是否有更聪明的东西:-)

看看这个:-

/*Using same distribution without changing the seed*/

data A(drop=i);
  call streaminit(123);
  do i = 1 to 5;
    col1 = rand("Normal",0,0.83325) + i; output;
  end;
run;


data E(drop=i);
  call streaminit(123);
  do i = 6 to 10;
    col1 = rand("Normal",0,0.83325) + i; output;
  end;
 run;

希望这有帮助:-)

你好,谢谢你的回复。你完全正确。我应该指定我使用相同的分布(正态)。我想到的一种方法是生成一个巨大的随机数表,并在不同的数据步骤中从该列表中进行选择;这很好斗,但会奏效;我想知道是否有一个更聪明的主意:-)嘿,我想这是一件更容易做的事。只需在数据集中保持分布相同,并在代码中更改“i”的值即可。例如,将第二个数据集中的1改为10,而不是1改为5。这样,您就不需要创建单独的数据集并从中选择数字。谢谢:-)像这样吗?恐怕它不能完成任务:-(数据A(drop=I);调用streaminit(123);doi=1到5;col1=rand(“正常”,0,0.83325);输出;结束;运行;数据E(drop=I);调用streaminit(123);doi=6到10;col1=rand(“正常”,0,0.83325);output;end;run;我感谢你的帮助India RocketHi,我忘了在这样的等式中添加“I”:col1='rand(“Normal”,0,0.83325)+I。