8

私は単純なデータフレームを持っています:

D <- c("2012/12/14", "2012/12/14")
Time <- c("18:40:37", "18:40:48")
df1 <- data.frame(D, Time)

日付と時刻の 2 つの列を、できれば日、月、年、時刻の形式で 1 ​​つに結合したいと考えています。

どうすればこれを行うことができますか?

4

3 に答える 3

16
R> within(df1, { timestamp=format(as.POSIXct(paste(D, Time)), "%d/%m/%Y %H:%M:%S") })

           D     Time           timestamp
1 2012/12/14 18:40:37 14/12/2012 18:40:37
2 2012/12/14 18:40:48 14/12/2012 18:40:48
于 2013-01-16T13:30:41.260 に答える
2

少し短い代替案は次のようになります。

df1 <- within(df1, { timestamp=strptime(paste(D, Time), "%Y/%m/%d%H:%M:%S") })
df1
       D     Time           timestamp
1 2012/12/14 18:40:37 2012-12-14 18:40:37
2 2012/12/14 18:40:48 2012-12-14 18:40:48
于 2016-12-27T09:19:08.980 に答える
1
df1$TS <- as.POSIXct(paste(df1$D, df1$Time))

これにより、df1 に日付と時刻を組み合わせた POSIXct 型の追加の列 TS が作成されます。で確認できます

str(df1)
于 2017-01-17T23:48:58.353 に答える