D程序中与set.seed(1234)相同的语法是什么;在R

D程序中与set.seed(1234)相同的语法是什么;在R,d,D,“srand”是不正确的命令。这是我第一次使用D语言。在R中,D作为set.seed的代码是什么 void main() { //srand(1234); ????// randInit(); auto x = RMatrix(10,1);foreach(rep; 0..1) { printR(rep.robj); double init = 0.0; foreach(ii; 0..100) { init = 0.5*init + rnorm(); }

“srand”是不正确的命令。这是我第一次使用D语言。在R中,D作为set.seed的代码是什么

void main() {
//srand(1234);  ????//
randInit();
auto x = RMatrix(10,1);foreach(rep; 0..1) {
printR(rep.robj);
double init = 0.0;
    foreach(ii; 0..100) {
        init = 0.5*init + rnorm();
    }
    x[0,0] = init;
    foreach(ii; 1..x.rows) {
        x[ii,0] = 0.8*x[ii-1,0] + rnorm();
    }

这取决于您正在使用的库。如果导入core.stdc.stdlib,则可以执行
rand
srand
但最好的方法可能是使用
std.random

你在乎种子是什么吗?如果没有,您可以使用自动函数,只需调用一些随机函数:

// Generate a uniformly-distributed integer in the range [0, 14]
auto i = uniform(0, 15);
或者你自己看看:

Random gen = Random(unpredictableSeed);
auto r = uniform(0.0L, 100.0L, gen);
如果您使用自己的
Random
对象,请确保通过
ref
将其传递给使用它的任何函数

Random(unpredictableSeed)
类似于其他语言中的
srand(time())
。您还可以执行
Random(1234)
来使用特定的种子


这些例子来自这里:

从技术上讲,你不能只做
统一(T1,T2)
而不指定生成器吗?据我所知,
uniform(T1,T2)
将使用默认的随机生成器初始化,该生成器使用
unpredictableSeed