每次在Python中运行代码时,如何以相同的顺序随机化pandas列?

Joh*_*Doe 2 python random numpy pandas

这是我的代码:

random_idx = np.random.permutation(len(cIds))
train_Ids = cIds[random_idx[:train_size]]
Run Code Online (Sandbox Code Playgroud)

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

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

Vla*_*den 6

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

np.random.seed(seed=1234)
random_idx = np.random.permutation(len(cIds))
Run Code Online (Sandbox Code Playgroud)

与...一样:

np.random.seed(1234)
random_idx = np.random.permutation(len(cIds))
Run Code Online (Sandbox Code Playgroud)

要么

random_idx = np.random.RandomState(seed=1234).permutation(len(cIds)
Run Code Online (Sandbox Code Playgroud)

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