“兰德流” MATLAB 7.6.0.324 中未定义?
我正在尝试在 MATLAB 7.6.0.324 中使用 RandStream
,如下所示:
randst = RandStream('mrg32k3a', 'Seed', 0);
显然,RandStream
未在 MATLAB 7.6.0.324 上定义,我找不到有关它的文档。
如何在此版本的 Matlab 中为 rand
和 randperm
设置随机种子。
I am trying to use RandStream
in MATLAB 7.6.0.324 as below:
randst = RandStream('mrg32k3a', 'Seed', 0);
Apparently, RandStream
is not defined on MATLAB 7.6.0.324 and I can not find a documentation about it.
How can I set random seed in this version of Matlab then for rand
and randperm
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您很可能从使用较新版本 MATLAB 的人那里获得了代码。
RandStream
函数是在 MATLAB 的更高版本中引入的(我不记得是哪个版本),正如您发现的那样,它在 v7.6.0.324 中不存在。在旧版本中,您只需在rand
中设置种子,如下所示:randperm
另一方面,在其中调用rand
。因此,在调用randperm
之前设置rand
的种子每次都会得到相同的输出。注意:
当前不推荐使用此语法(并且在未来版本中可能会停止支持)。来自文档:
Most likely, you got code from someone who uses a newer version of MATLAB. The
RandStream
function was introduced in later versions of MATLAB (I don't remember which) and as you found out, does not exist in v7.6.0.324. In older versions, you simply set the seed insiderand
like so:randperm
on the other hand, callsrand
inside it. So setting the seed forrand
before callingrandperm
will give you the same output each time.NOTE:
This syntax is not currently recommended (and support may be discontinued in future releases). From the documentation:
显然您使用的是旧版本,其中该函数尚未定义,
请尝试 qrandstream
you're obviously using an old version where the function hasn't been defined yet
try qrandstream