4
numpy配列内の一部の行の順序をシャッフルしたいとします。これらの行は常に連続しています(たとえば、行23〜80をシャッフルします)。各行の要素の数は1から(配列が実際に1Dになるように)100まで変化できます。numpy配列の一部の行のシャッフル順序
以下は、shuffle_rows()
がどのように動作するかを示すコード例です。このシャフリングを効率的に行うには、どうすればこのような方法を設計できますか?
import numpy as np
>>> a = np.arange(20).reshape(4, 5)
>>> a
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]])
>>> shuffle_rows(a, [1, 3]) # including rows 1, 2 and 3 in the shuffling
array([[ 0, 1, 2, 3, 4],
[15, 16, 17, 18, 19],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
私は 'を試みる場合print(shuffle_rows(a、[1,3])) 'Python 3で出力に" None "が表示されますか? – pir
シャッフルが適所で行われます。 'print(a)'とシャッフルされた行が表示されます – tom
ああ、意味があります。解明してくれてありがとう! – pir