matlab R2020b randperm fuction is not random

1 次查看(过去 30 天)
Hi,
When I use matlab R2020b on linux platform, commands follow:
order = randperm(10)
disp(order)
results show:
6     3     7     8     5     1     2     4     9    10
6     3     7     8     5     1     2     4     9    10
Curiously, the result is fixed,i.e., when I run this script again, the same results appear. Does anybody know what's wrong? thanks
  3 个评论
Adam Danz
Adam Danz 2022-7-14
Make sure you're using MATLAB's randperm function by using which
which randperm
built-in (/MATLAB/toolbox/matlab/randfun/randperm)
Does the same result occur if you shuffle the random number generator?
randperm(10)
rng('shuffle')
randperm(10)

请先登录,再进行评论。

采纳的回答

Fangjun Jiang
Fangjun Jiang 2022-7-14
Duh! You store the result in "order" and display it again. Of course they are the same!
order = randperm(10)
order = 1×10
5 7 6 10 3 1 4 9 2 8
disp(order)
5 7 6 10 3 1 4 9 2 8
order = randperm(10)
order = 1×10
6 7 5 10 3 8 1 2 9 4
disp(order)
6 7 5 10 3 8 1 2 9 4

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品


版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by