У меня есть фрейм данных, который выглядит примерно так:
0 Fish Trout
1 Fish Pickerel
2 Fish Pike
3 Bird Goose
4 Bird Duck
Я бы хотел назначить случайное число от 5 до 45 для записей, соответствующих fish, и случайное число от 55 до 95на записи, соответствующие птицам (логика здесь заключается в том, чтобы сгенерировать числовое значение, чтобы я мог построить его в соответствии с некоторыми другими числовыми критериями в боке или морском пороге).
Я дошел до этого:
Установите переменные для представления диапазонов генерации случайных чисел
Num_Fish = np.random.randint(5, 45)
Num_Bird = np.random.randint(55, 95)
Используйте указанные выше переменные в словаре и отобразите их вновый столбец, сопоставленный со столбцом категории
d = {'Bird': Num_Bird, 'Fish': Num_Fish}
data['Random'] = data['Category'].map(d)
Проблема с вышеприведенным состоит в том, что он назначает одно и то же случайное число для всех рыб и другое случайное число для всех птиц.То, что я хочу, это уникальные случайные числа (в указанном диапазоне) для каждого типа рыбы или птицы.
Так что в данный момент он производит что-то вроде этого:
0 Fish Trout 22
1 Fish Pickerel 22
2 Fish Pike 22
3 Bird Goose 53
4 Bird Duck 53
Как я могу получитьуникальные случайные числа (в указанном диапазоне) для отдельных записей в каждой категории?
Помимо этого, есть ли способ избежать повторения случайных чисел в случае больших наборов данных?
Было бы оченьблагодарен за любые предложения ... спасибо