2

私のデータセットでは、日の形式は次のとおりです。

day
2000-01-01 00:00:00
2000-01-01 01:00:00
2000-01-01 02:00:00
2000-01-01 03:00:00

私たちはデータフレームの日と呼んでいます。

何日もデータフレームを生成したいのですが、これを使用しています:

n=12
day <- as.Date( tail( day$day , 1 ) , format = "Y-%m-%d %H:%M:%S" )+1:n

ただし、問題は、これにより 2000-01-01 03:00:00 ではなく 2000-01-01 が返されることです。時間は含まれません。

4

2 に答える 2

1

これらのいずれかが機能します。また、 への呼び出しでの%前にa がありません。これらのデータ型の整数単位は秒であるため、日付/時刻に 1 時間を追加するには、日付に 3600 秒の倍数を追加する必要があることに注意してください。Yas.Date

n=12
strptime( "2000-01-01 03:00:00" , format = "%Y-%m-%d %H:%M:%S" )+(1:n)*3600
as.POSIXct( "2000-01-01 03:00:00" , format = "%Y-%m-%d %H:%M:%S" )+(1:n)*3600

方法をお勧めしas.POSIXctます。strptime文字ベクトルを class に変換しPOSIXltます。POSIXct理由はわかりませんが、よりも好む人が多いと思いますPOSIXlt

as.POSIXct( tail( days$day , 1 ) , format = "%Y-%m-%d %H:%M:%S" )+(1:n)*3600
于 2013-06-08T13:02:29.703 に答える