проблема с чтением в микросекундах zoo/xts

Данные выглядят так

           Time  Set1    Set2   
10:19:38.551629 16234   16236   
10:19:41.408010 16234   16236   
10:19:47.264204 16234   16236   

Я пытаюсь загрузить это в зоопарк.

orig <- read.zoo("~/sample.txt",sep="",header=TRUE,index.column=1,format="%H:%M:%S.%6f")

Error in read.zoo("~/sample.txt", sep = "", header = TRUE, index.column = 1,  : 
  index has 3 bad entries at data rows: 1 2 3 ...

Я проверил все соответствующие сообщения 1. R проблема с округлением миллисекунд 2. Загадка миллисекунд при вызове strptime в R 3. Как анализировать миллисекунды в R?

Однако это не помогает. Какие-либо предложения


person shoonya    schedule 21.06.2012    source источник
comment
Обратите внимание, что ответы на все эти сообщения используют format = '%H:%M:%OS' или format = '%H:%M:%OS6'.   -  person GSee    schedule 21.06.2012


Ответы (1)


Вы хотите, чтобы индекс был классом времени, таким как POSIXct или POSIXlt. Кроме того, ваш аргумент format был не совсем правильным. Попробуй это

read.zoo("~/sample.txt", header = TRUE, format="%H:%M:%OS", FUN=as.POSIXct)

Что для предоставленных выборочных данных дает

read.zoo(text="           Time  Set1    Set2   
10:19:38.551629 16234   16236   
10:19:41.408010 16234   16236   
10:19:47.264204 16234   16236   ", header = TRUE, format="%H:%M:%OS", FUN=as.POSIXct)
#                            Set1  Set2
#2012-06-21 10:19:38.551629 16234 16236
#2012-06-21 10:19:41.408010 16234 16236
#2012-06-21 10:19:47.264204 16234 16236
person GSee    schedule 21.06.2012
comment
Обратите внимание, что read.zoo(..., tz = "") или подобное, но с использованием tz="GMT", скажем, приведет к тому, что read.zoo по умолчанию будет POSIXct с указанным часовым поясом. - person G. Grothendieck; 21.06.2012
comment
Set1 Set2 22-06-2012 10:19:38 16234 16236 22-06-2012 10:19:41 16234 16236 22-06-2012 10:19:47 16234 16236. Я также установил параметры (цифры = 6), но до сих пор нет отметки времени в микросекундах в read.zoo - person shoonya; 22.06.2012
comment
options(digits.secs=6). Запустите это, тогда вы увидите микросекунды. - person GSee; 22.06.2012
comment
Спасибо Gsee. Зоопарк кажется довольно мощным. - person shoonya; 22.06.2012