4
是否有任何内置的numpy
函数来检查信号(数组)的哪个索引不会留下特定的错误带?从哪个索引数组值位于特定错误带内?
与数字滤波器的工作,我需要确定在scipy.signal.filtfilt
使用的脉冲响应的长度。 有限冲击响应(FIR)滤波器,但有一种不可能与无限脉冲响应(IIR)滤波器。
但是,它会做计算的地步,从脉冲响应不留有一定的误差带:
现在我使用的是一个快速和肮脏的解决方法,检查逆转手动阵列的误差带外的第一个值:
def ringing_time(sig, th):
return len(sig) - np.argmax(np.abs(sig[::-1]) > th)
是否有任何快速的内置numpy
方法对吗?
我会称你的“快速和肮脏的解决方法”一个美丽而优雅的解决方案! – Jaime
'(sig> th)| (sig <-th)似乎比计算abs(sig)> th更快,即使它在一个额外时间内循环了信号。还有'numpy.isclose',它需要少一圈,但似乎比原来慢。 – 2016-03-07 12:46:19