web-dev-qa-db-ja.com

R tickデータ:日付と時刻を単一のオブジェクトにマージします

現在、Rでティックデータを処理していますが、データの統計を計算するために正確な時間オブジェクトを取得する必要があるため、日付と時刻を単一のオブジェクトにマージしたいと思います。データは次のようになります。

               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

基本的に、列「date」と「time」を単一の列にマージしたいと思います。

35
marino89

as.POSIXctdatetimeオブジェクトを作成します。

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

もちろん、追加のパッケージを使用すると、(おそらく)よりエレガントなソリューションが可能になります。日付を操作する場合、lubridateパッケージです。

library(lubridate)

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

POSIXltベクトルを生成する必要があります。

3
topchef