我正在寻找一种方法来创建一个包含3列和3行的随机数据帧,但是第一列的随机数应该在[1:5]的范围内,[1:8]中的第二列和在[4:10]中排名第三。
我需要的例子:
A B C
0 4 3 9
1 1 4 10
2 4 8 4
我知道如何创建一个随机数据帧:
df = pd.DataFrame(np.random.randint(1,10,size=(3, 3)))
但我找不到添加这些范围作为每列条件的方法。我可以生成三个随机数,然后将它们作为数据帧添加在一起,但这不是我正在寻找的。
有帮助吗?
n = 3
df = pd.DataFrame(dict(
A=np.random.randint(1, 6, size=n),
B=np.random.randint(1, 9, size=n),
C=np.random.randint(4, 11, size=n)
))
df
A B C
0 3 5 6
1 1 7 6
2 1 1 4
要么
df = pd.DataFrame(
np.random.rand(3, 3) * [5, 8, 7] + [1, 1, 4],
columns=list('ABC')
).astype(int)
df
A B C
0 3 6 10
1 3 5 7
2 4 6 7