比较使用随机排列的Numpy和Matlab代码

2 投票
1 回答
1443 浏览
提问于 2025-04-17 21:54

我在比较两个代码的输出时遇到了问题,因为它们的随机数状态不一样。

我在对比MATLAB的 randperm 函数和相应的 numpy.random.permutation 函数的输出,但即使我把种子设置成相同的值,使用MATLAB的 rand('twister',0) 和Python的 numpy.random.seed(0),我得到的排列结果还是不一样。

我得说,如果种子设置得像上面那样,MATLAB的 rand 和 numpy 的 numpy.random.rand 结果是一样的。

1 个回答

1

这是一个常见的问题。虽然生成随机数的工具是一样的,但把这些随机数变成随机排列的函数却不一样。没有一个标准的算法可以说明你应该得到什么样的结果。

要解决这个问题,你需要在两个工具中使用相同的库。

撰写回答