R×lubridate::is.instant 日付時刻オブジェクトかどうかを判定する

R言語のlubridateパッケージに含まれているis.instant()関数について解説します。この関数は、「あるオブジェクトが、時間軸上の『特定の瞬間(時点)』を表すデータ型かどうかを判定したい」ときに使える関数です。具体的には、Dateクラス(日付)やPOSIXct / POSIXltクラス(日時)など、特定の「点」を指すオブジェクトに対してTRUEを返します。逆に、期間や時間の間隔を表すDurationPeriodIntervalなどに対してはFALSEになります。

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

概要

is.instant()は、日付時刻オブジェクト(例:POSIXctPOSIXltDateオブジェクト)かどうかを判定するための関数です。

使い方


is.instant(x)

引数

x

オブジェクトを指定します。

戻り値

xが日付時刻オブジェクト(例:POSIXctPOSIXltDateオブジェクト)の場合はTRUE、それ以外の場合はFALSEです。

使用例

準備

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


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

日付時刻オブジェクトかどうかを判定する


is.instant(as.Date("2020-06-15"))

[1] TRUE

is.instant(make_difftime(day = -1))

[1] FALSE

参考文献