比较使用随机排列的Numpy和Matlab代码
我在比较两个代码的输出时遇到了问题,因为它们的随机数状态不一样。
我在对比MATLAB的 randperm
函数和相应的 numpy.random.permutation
函数的输出,但即使我把种子设置成相同的值,使用MATLAB的 rand('twister',0)
和Python的 numpy.random.seed(0)
,我得到的排列结果还是不一样。
我得说,如果种子设置得像上面那样,MATLAB的 rand
和 numpy 的 numpy.random.rand
结果是一样的。
1 个回答
1
这是一个常见的问题。虽然生成随机数的工具是一样的,但把这些随机数变成随机排列的函数却不一样。没有一个标准的算法可以说明你应该得到什么样的结果。
要解决这个问题,你需要在两个工具中使用相同的库。