R×lubridate::as_datetime オブジェクトをDateTimeに変換する

R言語のlubridateパッケージに含まれているas_date()関数について解説します。この関数は、「日付だけのデータ(Date型)や文字列・数値に、時間情報を付与して『日時データ(POSIXct型)』に一括変換したい」ときに使える関数です。

lubridateパッケージは、日付と時間データを操作するための強力で便利な関数を多く取り扱っています。また、Rのデータサイエンス向け主要パッケージ群であるtidyverseパッケージにも含まれています。

概要

as_datetime()は、オブジェクトをDateTimeに変換するための関数です。

使い方


as_datetime(x, ...)
as_datetime(x, tz = lubridate::tz(x))
as_datetime(x, origin = lubridate::origin, tz = "UTC")
as_datetime(x, tz = "UTC", format = NULL)
as_datetime(x, tz = "UTC")

引数

x

POSIXtまたは数値、文字オブジェクトのベクトルを指定します。

tz = NULL

タイムゾーン名(デフォルト:POSIXtオブジェクト x のタイムゾーン)を指定します。OlsonNames()を参照してください。

origin = lubridate::origin

Dateオブジェクトまたはas.Date(origin, …) によってそのようなオブジェクトに変換できるもの(デフォルト:Unixエポック「1970-01-01」)を指定します。
この場合、xはoriginからの「UTC」での通算日数を表すものとみなされることに注意してください。

format = NULL

文字メソッドのフォーマット引数を指定します。
指定された場合、parse_date_time(x, orders = formats, exact = TRUE)によって解析が行われます。したがって、複数のフォーマットがサポートされており、順番に試されます。

特定のメソッドに渡される追加の引数を指定します。

戻り値

xに対応するDateTimeオブジェクトのベクトルを返します。

使用例

準備

あらかじめ、tidyverseパッケージまたはlubridateパッケージを読み込んでおきます。


# library(tidyverse)でもよい
library(lubridate)

DateTimeに変換する

文字列をDateTimeオブジェクトに変換するには次のようにします。


as_datetime("2020-06-15 12:30:45")

[1] "2020-06-15 12:30:45 UTC"

参考文献