#python #pandas #numpy
#python #pandas #numpy
Вопрос:
Используя numpy.random.multinomial, мне было интересно, можно ли просмотреть столбец значений в фрейме данных pandas и присвоить им статус True или False. Например, у меня есть эти значения во фрейме данных pandas.
col1 col2
240 0.0193549635804102
449 0.019230695266556665
355 0.01901116107244241
29 0.01886820933146161
301 0.017441394009229984
С вероятностью 40% True и вероятностью 60% False я хотел бы использовать numpy.random.multinomial для генерации фрейма данных, который должен выглядеть примерно так
col1 col2 T/F
240 0.0193549635804102 True
449 0.019230695266556665 False
355 0.01901116107244241 True
29 0.01886820933146161 True
301 0.017441394009229984 False
Глядя на документацию для numpy.random.multinomial, не похоже, что есть простой способ сделать это, и, возможно, было бы проще использовать что-то другое. Я был бы признателен за некоторые мысли о том, как это сделать
Комментарии:
1. Почему вы хотите использовать
numpy.random.multinomial
, если все, что вы, кажется, хотите иметь, это True / False с вероятностью 40/60%?np.random.rand(len(df)) < 0.4
сделал бы это.
Ответ №1:
Вероятно, вы можете использовать np.random.choice
для выполнения чего-то вроде:
df['T/F'] = np.random.choice([True, False], p=[0.4, 0.6], size=len(df))