2
如何計算一個信號v(t)的具有非均勻樣品的標準偏差可以說,我有兩個numpy的數組:numpy的:
y(n) = [y1, y2, y3...]
t(n) = [t1, t2, t3...]
y(n)
表示信號在時間點t(n)
的值。 現在,我想計算這個信號的標準偏差等統計量。 如果以統一的時間間隔取樣,我可以使用標準numpy函數std()
。在我的情況下,樣本不是統一的時間間隔。也就是說,t2-t1
可能不等於t3-t2
。
我想創建一個新的數組,它將通過插值y
的值創建。
g = [g1, g2, g3...] where
ts = np.min(np.diff(t)) # new sample size
g(n) = numpy.interp(n*ts, t, y) # interpolate
現在使用g
代替y
計算std
等 我想知道是否有更好的方法來做到這一點。
信號的標準偏差是在假設y(n)是從相同概率分佈取得的獨立隨機變量的情況下計算的。如果採樣時間分佈與信號相關,採用非均勻採樣這種假設可能並非如此。網絡搜索指向最近的一篇論文,其中計算來自非均勻採樣信號的統計信息詳見http://liu.diva-portal.org/smash/get/diva2:23251/FULLTEXT01.pdf –
在我的情況中,它是不是一個隨機變量。這是從特定時間點的物理事件觀察到的一系列值。這在理想情況下應該是一個常數。標準差用於衡量它與理想情況的差距。 感謝您的鏈接。我會檢查是否可以從那裏利用任何見解。 – Suresh