R言語のlubridateパッケージに含まれているas_date()関数について解説します。この関数は、「日時データ(POSIXct/POSIXlt型)や数値から、余計な『時間(時・分・秒)』や『タイムゾーン』の情報を削ぎ落とし、純粋な『日付(Date型)』に変換したい」ときに使える関数です。
lubridateパッケージは、日付と時間データを操作するための強力で便利な関数を多く取り扱っています。また、Rのデータサイエンス向け主要パッケージ群であるtidyverseパッケージにも含まれています。
概要
as_date()は、オブジェクトをDateに変換するための関数です。
使い方
as_date(x, ...)
as_date(x, tz = NULL)
as_date(x, origin = lubridate::origin)
as_date(x, tz = NULL, format = NULL)
引数
POSIXtまたは数値、文字オブジェクトのベクトルを指定します。
タイムゾーン名(デフォルト:POSIXtオブジェクト x のタイムゾーン)を指定します。OlsonNames()を参照してください。
Dateオブジェクトまたはas.Date(origin, …) によってそのようなオブジェクトに変換できるもの(デフォルト:Unixエポック「1970-01-01」)を指定します。
この場合、xはoriginからの「UTC」での通算日数を表すものとみなされることに注意してください。
文字メソッドのフォーマット引数を指定します。
指定された場合、parse_date_time(x, orders = formats, exact = TRUE)によって解析が行われます。したがって、複数のフォーマットがサポートされており、順番に試されます。
特定のメソッドに渡される追加の引数を指定します。
戻り値
xに対応するDateオブジェクトのベクトルを返します。
使用例
準備
あらかじめ、tidyverseパッケージまたはlubridateパッケージを読み込んでおきます。
# library(tidyverse)でもよい
library(lubridate)
Dateに変換する
文字列をDateオブジェクトに変換するには次のようにします。
as_date("2020-06-15")
[1] "2020-06-15"