概要
Rのデータ分析でよく使う日付の操作コマンドをメモしようと思います。
コマンド
①文字列から日付型(yyyy-mm-dd)への変換
> # xlsxやcsvファイルを読み込むと数値表示になってしまう事がある > X[, Date] [1] 44003 > # この場合、as.Date関数を用いる事で修正が可能。 > # 「origin="1899-12-30"」は、xlsxやcsvの仕様に基づくおまじない > # 「tz="Asia/Tokyo"」は、タイムゾーン。下記等を指定可能。 > # 日本:"Asia/Tokyo"、世界標準時:"GMT" > X[, Date] <- as.date="" date="" origin="1899-12-30" span="" tz="Asia/Tokyo") > X[, Date] [1] 2020-06-21
②文字列から日時(yyyy-mm-dd hh:mm:ss)への変換
> # xlsxやcsvファイルを読み込むと数値表示になってしまう事がある
> X[, datetime]
[1] 43815.55
> # この場合、as.POSIXct関数を用いる事で修正が可能。
> # 「origin="1970-01-01"」は、日時操作時のおまじない
> # 「tz="Asia/Tokyo"」は、タイムゾーン。①と同。
> X[, datetime] <- as.POSIXct((X[, datetime]-25569)*86400, tz="Asia/Tokyo", origin="1970-01-01")
> X[, datetime]
[1] 2020-05-14 07:05:00
③文字列から時間(hh:mm:ss)への変換
> # ②から「hh:mm:ss」になる部分だけを取り出せば良い
> X[, time]
[1] 43815.55
> # ②からformat関数で「hh:mm:ss」だけを取り出す
> X[, time] <- format(as.POSIXct((X[, time]-25569)*86400, tz="Asia/Tokyo", origin="1970-01-01"), "%H:%M:%S")
> X[, time]
[1] 07:05:00
①と②は紹介している書籍やブログが結構あるのですが③は意外と調べるのに苦労しました。
ということで、本日はここまでで。
0 件のコメント:
コメントを投稿