[英]How to efficiently shuffle numpy array in chunks
我有一個類似下面的[-1,0,1,0,1,2,1,2,3,...,n-1,n,n + 1,n,n + 1, n + 2 ..]我想將數組以3為單位隨機播放,是否有一種有效的方法可以在numpy中進行處理?
我知道您可以使用下面的shuffle方法對numpy數組進行shuffle,但這為我提供了一個完整的shuffle數組。 有沒有一種方法可以將其在numpy中以大塊的形式隨機播放?
import numpy.random as rng
ind = numpy.arange(100)
rng = numpy.random.RandomState(123)
rng.shuffle(ind)
重塑為3列。 shuffle
doc說,它只是對第一維進行了洗牌:
ind=np.arange(99) # multple of 3
ind=ind.reshape(-1,3)
rng.shuffle(ind)
ind.flatten()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.