首页 > 解决方案 > 每次在 Python 中运行代码时,如何以相同的顺序随机化 pandas 列?

问题描述

这是我的代码:

random_idx = np.random.permutation(len(cIds))
train_Ids = cIds[random_idx[:train_size]]

现在,我希望每次运行这行代码时列表都以相同的顺序随机化。

注意:我不想将random_idx变量保存在文本文件中,并获取相同的列表。

标签: pythonpandasnumpyrandom

解决方案


您可以使用seed来告诉 numpy 生成相同的随机数:

np.random.seed(seed=1234)
random_idx = np.random.permutation(len(cIds))

如同:

np.random.seed(1234)
random_idx = np.random.permutation(len(cIds))

或者

random_idx = np.random.RandomState(seed=1234).permutation(len(cIds)

种子:必须可转换为 32 位无符号整数`


推荐阅读