2011-08-23 49 views
3

我已經從歷史記錄數據創建了一個來自SQL數據庫的xts對象。我想創建滴答數據的子集,例如:xts tick數據滾動子集

在上午10點到下午2點30分之間顯示每日滴答。這將允許我根據一天的時間爲特定的交易想法創建特定的數據集。我的索引格式如下:

> index(merged[3567,]) 
[1] "2011-08-01 13:17:59 SAST" 

請問xt專家請告訴我如何去創建這些子集?任何建議將不勝感激。

回答

4

您可以使用每日時間子集:

merged["T10:00/T14:30"] 
1

您可以使用difftime從一天的開始計算時間,如:

diffs <- difftime(time(merged), as.Date(time(merged)), units="hours", tz="SAST") 

,然後用其子集作爲一個布爾值指標:

merged[diffs > 10 & diffs < 14.5] 

您還可以使用POSIXlt

merged[as.POSIXlt(time(merged))$hour > 10] 
+0

謝謝!奇蹟般有效! –

+1

@ E.D。如果您覺得此A解決了您的問題,請考慮接受此爲正確答案(通過點擊變爲綠色的灰色複選標記)。 –