2

ポイントのセット xyz8 があります。

ランダムに10%のポイントを獲得したいです。

次に、残りの 90% の 10% をランダムに取得したい

次に、残りの 70% の 10% をランダムに取得したい

すべてのポイントが完了するまで

どうすればこれを行うことができますか?

どんなアドバイスでも大歓迎です

4

2 に答える 2

1

何かのようなもの:

import random

l = [1,2,3,4]
random.shuffle(l)
while len(l) > 0:
    choice = l[:len(l) / 10]
    l = l[len(l) / 10:]
于 2013-09-13T22:31:28.263 に答える
1

これは、ポイントを 10 個の等しいサイズのセグメントに分割したいと考えていると解釈します。それらをシャッフルしてリストを再形成することで、これを簡単に行うことができます。

np.random.shuffle(points)
points.shape = (10,-1) + points.shape[1:]

points[0]次に、最初の 10% を として、2 番目を としてpoints[1]、などにアクセスできます。

シャッフルは最初の軸に沿ってのみシャッフルするため、これは多次元配列でも機能します。

于 2013-09-13T23:01:16.127 に答える