Rで解析:年月日時分秒のオブジェクトを整形するコマンドの例

Rの解析に役に立つ記事
スポンサーリンク

年月日時分秒のオブジェクトを整形するコマンドの例です。pasteやpaste0コマンドと組み合わせて使うのが便利です。パッケージのインストールの必要がなく実行可能です。

実行コマンドはR version 4.2.2で確認しています。

スポンサーリンク

実行コマンド

詳細はコメント、コマンドのヘルプを確認してください。

#システムのタイムゾーンでdate-time classを作成
TestDateClass <- ISOdate(2023, 01, 20, 8, 23, 17, tz = Sys.timezone(location = TRUE))
TestDateClass
[1] "2023-01-20 08:23:17 JST"

#class&#12398;&#30906;&#35469;
class(TestDateClass)
[1] "POSIXct" "POSIXt"

#date-time class&#12398;&#26360;&#24335;&#12434;&#25972;&#24418;
#&#35199;&#26278;&#12434;&#21462;&#24471;:%y
format(TestDateClass, "%y")
[1] "23"
#&#12458;&#12503;&#12471;&#12519;&#12531;&#12434;&#22823;&#25991;&#23383;&#12395;&#12377;&#12427;&#12392;

format(TestDateClass, "%Y")
[1] "2023"

#&#26376;&#12434;&#21462;&#24471;:%b
format(TestDateClass, "%b")
[1] "1"

#&#12458;&#12503;&#12471;&#12519;&#12531;&#12434;&#22823;&#25991;&#23383;&#12395;&#12377;&#12427;&#12392;
format(TestDateClass, "%B")
[1] "1&#26376;"

#&#26332;&#26085;&#12392;&#26178;&#38291;&#12434;&#21462;&#24471;:%c
format(TestDateClass, "%c")
[1] "&#37329; 1 20 08:23:17 2023"

#&#26332;&#26085;&#12434;&#21462;&#24471;:%a
format(TestDateClass, "%a")
[1] "&#37329;"

#&#12458;&#12503;&#12471;&#12519;&#12531;&#12434;&#22823;&#25991;&#23383;&#12395;&#12377;&#12427;&#12392;
format(TestDateClass, "%A")
[1] "&#37329;&#26332;&#26085;"

#&#25968;&#20516;&#12391;&#21462;&#24471;:%w
format(TestDateClass, "%w")
[1] "5"

#&#26376;&#12434;&#21462;&#24471;:%m
format(TestDateClass, "%m")
[1] "01"

#&#26085;&#12434;&#21462;&#24471;:%d
format(TestDateClass, "%d")
[1] "20"

#24&#26178;&#38291;&#34920;&#31034;&#12391;&#26178;&#38291;&#12434;&#21462;&#24471;:%H
format(TestDateClass, "%H")
[1] "08"

#12&#26178;&#38291;&#34920;&#31034;&#12391;&#26178;&#38291;&#12434;&#21462;&#24471;:%I
#&#21320;&#21069;8&#26178;&#12394;&#12398;&#12391;&#22793;&#21270;&#12394;&#12375;
format(TestDateClass, "%I")
[1] "08"

#&#21320;&#21069;/&#21320;&#24460;&#12434;&#21462;&#24471;:%p
format(TestDateClass, "%p")
[1] "&#21320;&#21069;"

#&#20998;&#12434;&#21462;&#24471;:%M
format(TestDateClass, "%M")
[1] "23"

#&#31186;&#12434;&#21462;&#24471;:%S
format(TestDateClass, "%S")
[1] "17"

#&#25351;&#23450;&#12375;&#12383;&#26085;&#12364;&#20803;&#26086;&#12363;&#12425;&#20309;&#26085;&#30446;&#12363;&#12434;&#21462;&#24471;:%j
format(TestDateClass, "%j")
[1] "020"

#&#25351;&#23450;&#12375;&#12383;&#26085;&#12364;&#20803;&#26086;&#12363;&#12425;&#20309;&#36913;&#30446;&#12363;&#12434;&#21462;&#24471;
#&#26376;&#26332;&#26085;&#12434;&#36913;&#21021;&#12417;&#12392;&#12377;&#12427;:%W
format(TestDateClass, "%W")
[1] "03"

#&#26085;&#26332;&#26085;&#12434;&#36913;&#21021;&#12417;&#12392;&#12377;&#12427;:%U
format(TestDateClass, "%U")
[1] "03"

#paste0&#12467;&#12510;&#12531;&#12489;&#12392;&#12398;&#32068;&#12415;&#21512;&#12431;&#12379;
#&#12358;&#12427;&#12358;&#24180;&#12399;&#32771;&#24942;&#12375;&#12390;&#12356;&#12414;&#12379;&#12435;
format(TestDateClass, paste0("%B", "%d", "&#26085;&#12391;&#12377;&#12290;",
                             "&#20170;&#24180;&#12399;&#12354;&#12392;",
                             366-as.numeric(format(TestDateClass, "%j")), "&#26085;&#12391;&#32066;&#20102;&#12391;&#12377;&#12290;"))
[1] "1&#26376;20&#26085;&#12391;&#12377;&#12290;&#20170;&#24180;&#12399;&#12354;&#12392;346&#26085;&#12391;&#32066;&#20102;&#12391;&#12377;&#12290;"

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました