1
我有類似np.arange([100000])的東西,我需要多次檢索兩個索引之間的數據。目前我運行這個很慢numpy array快速切片多次
data = np.arange([100000])
# This array usually contains thousands of slices
slices = np.array([
[1, 4],
[10,20],
[100,110],
[1000,1220]
])
# One way i have been doing it
np.take(data, [i for iin, iout in slices for idx in range(iin, iout)])
# The other way
[data[iin:iout] for iin, iout in slices]
兩種方式都很慢。我需要這個速度非常快。我在尋找這樣的東西。
data[slices[:,0], slices[:,1]]