1

次の形式のタブ区切りファイルがあります。

Date    Time    Last    LastSize    TotVol  Bid Ask TickID  BidSize AskSize
8/23/2012   0:00:00 0.95711 1   20670   0.95711 0.95742 0   0   0
8/23/2012   0:00:04 0.9571  1   20671   0.9571  0.9574  0   0   0

この関数を使用して、R内にXTSを作成しています。

> EURUSD <- as.xts(read.zoo("C:\\Users\\caustic\\Documents\\DTN\\IQFeed\\EURUSD.FXCM_1.txt",
+                           sep='\t', 
+                           tz='',   
+                           header=T,
+                           format='%d/%m/%Y %H:%M:%S'))

次のエラーが発生します:as.POSIXlt.character(x、tz、...)のエラー:文字列が標準の明確な形式ではありません

問題は、データと時間を必要なPOSIX形式に組み合わせるにはどうすればよいですか?ありがとう

4

2 に答える 2

2

OPは実際には彼の答えを更新していないので、これを行う1つの方法を追加します。タブ区切り(またはCSV)コンテンツをに変換するにxtsは、最初にデータを通常のデータフレームとして読み取り、次に.xts関数を使用してに変換することdata.frameを好みます。xts

.xtsただし、現在は文書化されていない機能です。

require(xts)
filecontent <- 'Date    Time    Last    LastSize    TotVol  Bid Ask TickID  BidSize AskSize
8/23/2012   0:00:00 0.95711 1   20670   0.95711 0.95742 0   0   0
8/23/2012   0:00:04 0.9571  1   20671   0.9571  0.9574  0   0   0'

DF <- read.table(text = filecontent, header = TRUE, stringsAsFactors = FALSE)

DFINDEX <- paste(DF$Date, DF$Time, sep = " ")

DF.XTS <- .xts(x = DF[, 3:10], index = as.POSIXct(DFINDEX, format = "%m/%d/%Y %H:%M:%S", tzone = "GMT"))

DF.XTS
##                        Last LastSize TotVol     Bid     Ask TickID BidSize AskSize
## 2012-08-23 08:00:00 0.95711        1  20670 0.95711 0.95742      0       0       0
## 2012-08-23 08:00:04 0.95710        1  20671 0.95710 0.95740      0       0       0
于 2013-04-03T08:21:39.070 に答える
-1

cran.r-project.org/web/packages/zoo/vignettes/zoo-read.pdfで機能するのは例4でした。助けてくれたJoshuaUlrichに感謝します。

于 2012-08-24T21:43:36.133 に答える