我有一些採樣(單變量)數據 - 但驅動採樣過程的時鐘不準確 - 導致每30次隨機滑動一個(小於)1個採樣。大約1/30的頻率爲相同的數據提供可靠的採樣...使我能夠對時鐘漂移進行很好的估計。Interpolaton算法來糾正輕微的時鐘漂移
我正在尋找插值採樣數據來糾正這個問題,以便我'適合'高頻數據到低頻。我需要'實時'來做這件事 - 只需少量低頻採樣的延遲。
我認識到存在各種各樣的插值算法,並且在我考慮的那些算法中,基於樣條的方法對於這些數據看起來最有希望。
我正在Python中工作 - 並找到了scipy.interpolate包 - 儘管我沒有看到明顯的方式來使用它來「拉伸」n個樣本來糾正一個小時間錯誤。我可以忽略一些東西嗎
我對指向合適的已發佈算法的指針感興趣,或者 - 理想情況下 - 實現這種轉換的Python庫函數。這是SciPy(或其他)支持的嗎?
UPDATE ...
我開始意識到什麼,起初,似乎是一個很重要的問題就沒有那麼簡單,因爲我首先想到的。我不再相信天真使用樣條線就足夠了。我也意識到,我的問題可以更好地描述,而無需參考'時鐘漂移'...像這樣:
一個隨機變量以兩個不同的頻率進行採樣 - 一個低和一個高,沒有公約數 - 例如5hz和144hz。如果我們假設樣本0在兩個採樣率下都是相同的,則樣本1 @ 5hz落在樣本28和29之間。我想構建一個新的序列 - 在720hz,即 - 儘可能平滑地適合所有已知數據點。
我曾希望找到一個'開箱即用'的解決方案。
哎呦。我應該承認,這個問題比我在這裏的帖子更抽象。我處於需要研究一些數據的情況 - 一種假設是樣條應該適合...我試圖找到可以幫助我評估這種可能性的工具。我很明顯需要重新實現我認爲應該成爲教科書的東西,這讓我感到沮喪。我有N個均勻間隔的樣本,我想在N +/- d上重新解釋,其中d <1個樣本。樣條擬合所需的假設應該適合我的問題...我有很多需要檢查的 - 因此不願意重新發明輪子。 – aSteve
您需要對樣條擬合的好處進行統計檢驗。從我的計量經濟學課程開始(不是他們教授樣條的地方......),但是我猜你甚至可以在OLS的背景之外用R^2做些事情。此外,也許這是有幫助的(即使語言是Stata而不是Python,但指出想法然後擔心實現)http://data.princeton.edu/eco572/smoothing2.html – wkschwartz
感謝您的發人深省的輸入。我現在不太相信樣條是正確的方法......我給了這個更多的想法,增加了幾個細節。 – aSteve