puedo convertir un data.table a un XTS objeto tal como lo hago con un hoja.de.datos:XTS R y data.table
> df = data.frame(x = c("a", "b", "c", "d"), v = rnorm(4))
> dt = data.table(x = c("a", "b", "c", "d"), v = rnorm(4))
> xts(df, as.POSIXlt(c("2011-01-01 15:30:00", "2011-01-02 15:30:00", "2011-01-03 15:50:50", "2011-01-04 15:30:00")))
x v
2011-01-01 15:30:00 "a" "-1.2232283"
2011-01-02 15:30:00 "b" "-0.1654551"
2011-01-03 15:50:50 "c" "-0.4456202"
2011-01-04 15:30:00 "d" "-0.9416562"
> xts(dt, as.POSIXlt(c("2011-01-01 15:30:00", "2011-01-02 15:30:00", "2011-01-03 15:50:50", "2011-01-04 15:30:00")))
x v
2011-01-01 15:30:00 "a" " 1.3089579"
2011-01-02 15:30:00 "b" "-1.7681071"
2011-01-03 15:50:50 "c" "-1.4375100"
2011-01-04 15:30:00 "d" "-0.2467274"
¿Hay algún problema en el uso de data.table con XTS?
no hay ningún problema, pero el hecho de que era un data.table se pierde: los datos se convierten a una matriz (dentro de la xts objeto). En su ejemplo, es incluso una matriz de cadenas. –
Pensé que xts mantenía un objeto data.frame en su implementación interna y solo agregaba índices de tiempo como atributos. ¿Las consultas de indexación que estoy ejecutando son xts nativas en lugar de consultas data.frame o data.table? –
@RobertKubrick: xts, al igual que su clase principal (zoo), utiliza una matriz (no un data.frame) con un atributo de índice. –