def get_data(self, dsource, sliceval):
if self.subslice is None:
return dsource[sliceval]
else:
subslice_inds = self.subsliceinds[sliceval]
mbs = self.mini_batch_size
bn0 = subslice_inds.min() // mbs
bn1 = subslice_inds.max() // mbs
stims = []
for _bn in range(bn0, bn1 + 1):
_s = np.asarray(dsource[_bn * mbs: (_bn + 1) * mbs])
new_inds = isin(np.arange(_bn * mbs, (_bn + 1) * mbs), subslice_inds)
new_array = _s[new_inds]
stims.append(new_array)
stims = np.concatenate(stims)
return stims
评论列表
文章目录