2015-08-29 54 views
3

我正在研究一個應用程序,我需要維護一個對象的軌跡。基本上,我想有一個像鍵入時間的排序字典,值是位置。另外,我將在現有條目之間進行線性插值。我在Grant Jenks的SortedContainers庫中玩了一點SortedDictionary,它做了很多我想要的,但是我想知道是否有解決方案更適合?在此先感謝您的任何建議。適合時間序列的數據結構

回答

2

如果您使用的是pandas,則有time series support available

+0

謝謝,這看起來很有趣。我將要使用的時間將是非常基本的 - 本質上簡單的浮點值從0.0開始。熊貓會爲此過度殺傷嗎? – user888379

+0

使用numpy本身可能是過度的,如果你使用的是numpy,添加熊貓不是太多的開銷。 – hd1

+0

那麼,應用程序的其他方面將會更加數學化(例如座標變換),所以我認爲我會想要numpy。我會更深入地看待熊貓,同時讓其他人有機會回答...... – user888379

1

如果您的時間間隔可靠地保持恆定,那麼可以使用列表或當然是一個numpy數組。

否則,你可以看看集合模塊有序字典(標準庫)

Return an instance of a dict subclass, supporting the usual dict 

方法。 OrderedDict是一個字典,它記住了第一次插入密鑰的順序。如果新條目覆蓋現有條目, 原始插入位置保持不變。刪除條目 並重新插入它會將其移動到最後。

+0

感謝您的建議。所以,時間間隔不會保持不變,並且不能保證我將按照我希望保留的順序輸入位置(我可能希望插入兩個現有位置之間的位置)。 – user888379