Я знаю, что если я использую randn
,
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(100, 4), columns=list('ABCD'))
дает мне то, что я ищу, но с элементами нормального распределения. Но что, если мне просто нужны случайные целые числа?
randint
работает, предоставляя диапазон, но не массив, как это randn
делает. Итак, как мне сделать это со случайными целыми числами в некотором диапазоне?
Ответы:
numpy.random.randint
принимает третий аргумент (size
), в котором вы можете указать размер выходного массива. Вы можете использовать это для создания своегоDataFrame
-Здесь -
np.random.randint(0,100,size=(100, 4))
- создает выходной массив размера(100,4)
со случайными целыми элементами между ними[0,100)
.Демо -
который производит:
источник
[...]
- это уже список, поэтому вам не нужноlist([...])
В наши дни рекомендуемый способ создания случайных целых чисел с помощью NumPy - использовать
numpy.random.Generator.integers
. ( документация )источник