import numpy as np
data = np.arange(200).reshape(-1,1)
fea = 6
sap = 10
interval = 32
ctn = 5
zone = np.random.randint(1, len(data)-fea-interval*ctn, sap)
print('Random sampling')
print(data.shape)
print(zone)
print(len(zone),'n')
ctn_arr = []
zone = np.array([np.arange(z, z+interval*ctn, 32) for z in zone]).ravel()
print('Random continuous sampling')
print(zone.reshape(sap,-1), 'n')
zone = zone.ravel()
slic = np.array([data[i:i+fea, :] for i in zone]).squeeze()
print('Final sampled data matrix')
print(slic.shape)
Random sampling
(200, 1)
[31 4 11 30 28 25 30 15 10 33]
10
Random continuous sampling
[[ 31 63 95 127 159]
[ 4 36 68 100 132]
[ 11 43 75 107 139]
[ 30 62 94 126 158]
[ 28 60 92 124 156]
[ 25 57 89 121 153]
[ 30 62 94 126 158]
[ 15 47 79 111 143]
[ 10 42 74 106 138]
[ 33 65 97 129 161]]
Final sampled data matrix
(50, 6)