def spikes(data, start_sample, threshs, pad_len, order):
for col_i in range(data.shape[1]):
column = data[:, col_i]
rel_extremes, = argrelextrema(
column,
lambda x, y: thres_extrema(x, y, threshs[col_i]),
order=order)
mask = (rel_extremes >= pad_len) & (
rel_extremes < data.shape[0] - pad_len)
extreme_samples = rel_extremes[mask] + start_sample - pad_len
yield from [(col_i, sample) for sample in extreme_samples]
评论列表
文章目录