我使用了
scipy.signal.lfilter(coefficient, 1, input, axis=0)
在python中過濾一個有9830000個樣本的信號(我必須使用axis=0才能得到與matlab相似的答案),與matlab相比
filter(coefficient, 1, input)(seconds),
這需要很長的時間(負數),當我必須多次過濾時,情況變得更糟。我也試過numpy,同樣的時間問題。是否有任何其他的過濾器可以讓我得到類似的答案?
uj5u.com熱心網友回復:
你可以使用itertools中的ifilter來實作一個更快的過濾器。 來自Python的內置函式過濾器的問題是,它回傳一個串列,當你處理大量資料時,會消耗記憶體。因此,itertools.ifilter是一個更好的選擇,因為它只在需要時呼叫該函式。
根據你的實作,一些其他的想法是:
如果你正在設計一個新的應用程式,那么你可以選擇一個新的應用程式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/309718.html
標籤:
