簡體   English   中英

從數據框中隨機選擇數據,但不要重復

[英]Selecting data from dataframe randomly but do not REPEAT

如果我有一個數據框,例如從1到50的數字,那么我需要' X '組數字,每組包含' Y '個隨機數。 而且號碼不能重復。

例如, X =5 and Y=5

X1 1, 8, 12, 17, 16
X2 9, 22, 45, 47, 23
X3 13, 19, 21, 34, 50
X4 46, 49, 29, 38, 11 
X5 33, 26, 14, 7, 6

有誰知道我怎么能通過python Pandas或random package或R來做到這一點?

In [64]:

np.random.choice(np.arange(1,51), (5,5), replace=False)
Out[64]:
array([[18, 35, 20, 39,  7],
       [27, 41, 26, 30, 14],
       [47, 23, 17, 40, 38],
       [34,  6,  3, 42, 31],
       [48, 49, 16, 15,  1]])

然后,您可以將其傳遞給df構造函數:

In [65]:

pd.DataFrame(np.random.choice(np.arange(1,51), (5,5), replace=False))
Out[65]:
    0   1   2   3   4
0  35  41  38  50  26
1  24  34  14   2  29
2   8  43  25  17  49
3  30   5  40   6  21
4  20  11  31  33  23

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM