CSRスパースな配列y
と行列があります。X
の各行がの行に対応するy
Xのランダムソートを実行する必要があります。y
X
NumPyを使用して、どうすればよいですか?
ランダムソートを取得するために、関数を使用してみることができnp.random.shuffle
ます。
# Create an array of indices
indices = np.arange(y.size)
# Randomize it
np.random.shuffle(indices)
これで、ファンシーインデックスを使用indices
してランダム化するために使用できます。y
y_new = y[indices]
同じものを使用しindices
てマトリックスを並べ替えることもできますが、CSRマトリックスは派手なインデックス付けをサポートしていないことに注意してください。それをLILに変換し、並べ替えてから、CSRに再変換する必要があります。