web-dev-qa-db-fra.com

R tick data: fusion de la date et de l'heure en un seul objet

Je travaille actuellement sur des données de tick avec R et je voudrais fusionner la date et l'heure en un seul objet car j'ai besoin d'obtenir un objet de temps précis pour calculer des statistiques sur mes données. Voici à quoi ressemblent mes données:

               date       time      price flag    exchange
2   XXH10   2010-02-02   08:00:03   2787 1824        E
3   XXH10   2010-02-02   08:00:04   2786    3        E
4   XXH10   2010-02-02   08:00:04   2787    6        E
5   XXH10   2010-02-02   08:00:04   2787    1        E
6   XXH10   2010-02-02   08:00:04   2787    1        E

Fondamentalement, je voudrais fusionner les colonnes "date" et "heure" en une seule.

35
marino89

Créez un objet datetime avec as.POSIXct:

as.POSIXct(paste(x$date, x$time), format="%Y-%m-%d %H:%M:%S")
[1] "2010-02-02 08:00:03 GMT" "2010-02-02 08:00:04 GMT" "2010-02-02 08:00:04 GMT"
[4] "2010-02-02 08:00:04 GMT" "2010-02-02 08:00:04 GMT"
66
Andrie

Bien sûr, une solution plus élégante (sans doute) est possible avec un package supplémentaire. Lorsque vous travaillez avec des dates, c'est lubridate package:

library(lubridate)

with(x, ymd(date) + hms(time))

devrait produire le vecteur POSIXlt .

3
topchef