Как рандомизировать столбец панд в том же порядке каждый раз, когда я запускаю код на Python? - PullRequest
0 голосов
/ 22 декабря 2018

Это мой код:

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

Теперь я хочу, чтобы список был рандомизирован в том же порядке каждый раз, когда я запускаю эту строку кода.

Примечание. Я не хочу сохранять переменную random_idx в текстовом файле и получать тот же список.

Ответы [ 2 ]

0 голосов
/ 22 декабря 2018

Или вы можете сделать в стиле панд:

cIds.sample(n=train_size, 
            replace=False, 
            random_state=your_favorite_number_here)
0 голосов
/ 22 декабря 2018

Вы можете использовать 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)

seed: должен быть преобразован в 32-разрядные целые числа без знака`

...