パンダを試すのはこれが初めてです。妥当なユースケースがあると思いますが、つまずきます。タブ区切りファイルをPandasDataframeにロードし、それをSymbolでグループ化し、TimeStamp列でインデックス付けされたx.axisでプロットしたいと思います。データのサブセットは次のとおりです。
Symbol,Price,M1,M2,Volume,TimeStamp
TBET,2.19,3,8.05,1124179,9:59:14 AM
FUEL,3.949,9,1.15,109674,9:59:11 AM
SUNH,4.37,6,0.09,24394,9:59:09 AM
FUEL,3.9099,8,1.11,105265,9:59:09 AM
TBET,2.18,2,8.03,1121629,9:59:05 AM
ORBC,3.4,2,0.22,10509,9:59:02 AM
FUEL,3.8599,7,1.07,102116,9:58:47 AM
FUEL,3.8544,6,1.05,100116,9:58:40 AM
GBR,3.83,4,0.46,64251,9:58:24 AM
GBR,3.8,3,0.45,63211,9:58:20 AM
XRA,3.6167,3,0.12,42310,9:58:08 AM
GBR,3.75,2,0.34,47521,9:57:52 AM
MPET,1.42,3,0.26,44600,9:57:52 AM
TimeStamp列について2つのことに注意してください。
- 値が重複していて、
- 間隔は不規則です。
こんなことができると思った…
from pandas import *
import pylab as plt
df = read_csv('data.txt',index_col=5)
df.sort(ascending=False)
df.plot()
plt.show()
ただし、read_csvメソッドでは、「列1-Xをインデックスとして試行しましたが、重複が見つかりました」という例外が発生します。重複する値を持つインデックス列を指定できるオプションはありますか?
また、不規則なタイムスタンプ間隔を1秒の解像度に合わせることに興味があります。それでも、特定の秒に複数のイベントをプロットしたいのですが、一意のインデックスを導入して、それに価格を合わせることができますか?