R×lubridate::hour 日時オブジェクトの時要素を取得または設定する

R言語のlubridateパッケージに含まれているhour()関数について解説します。この関数は、「日付・時刻データ(POSIXctDateなど)から「時(Hour)」の数値だけを抽出・変更したい」ときに使える関数です。

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

概要

hour()は、日時オブジェクトの時要素を取得または設定するための関数です。

使い方


hour(x)

hour(x) <- value

引数

x

日時オブジェクト(POSIXct、POSIXlt、Date、Period、chron、yearmon、yearqtr、zoo、zooreg、timeDate、xts、its、ti、jul、timeSeries、fts)を指定します。

value

時を表す数値を指定します。

使用例

準備

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


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

時を取得する

時を取得するには次のようにします。


x <- ymd_hms(c("2001-01-01 01:01:01", "2002-02-02 02:02:02", "2003-03-03 03:03:03"))
hour(x)

[1] 1 2 3

時を設定する

時を設定するには次のようにします。


hour(x) <- c(11, 12, 13)
x

[1] "2001-01-01 11:01:01 UTC" "2002-02-02 12:02:02 UTC" "2003-03-03 13:03:03 UTC"

参考文献