時刻を使った計算
POSIXct オブジェクトを使った計算は、Date オブジェクトを使った計算とまったく同じように行えます。次のコードを試して、POSIXct オブジェクトに値を加算・減算してみましょう。
now <- Sys.time()
now + 3600 # add an hour
now - 3600 * 24 # subtract a day
時刻オブジェクト同士の加算や減算も簡単です。
birth <- as.POSIXct("1879-03-14 14:37:23")
death <- as.POSIXct("1955-04-18 03:47:12")
einstein <- death - birth
einstein
あなたはユーザーのログイン・ログアウトが必要なウェブサイトを開発しています。特定のユーザーがサイトに費やした合計時間と平均時間を調べたいとします。このユーザーは5回ログインし、5回ログアウトしています。これらの時刻はベクトル login と logout にまとめられており、ワークスペースにすでに定義されています。
この演習はコースの一部です
中級 R
演習の手順
- 2つのベクトル
logoutとloginの差、つまり各セッションでユーザーがオンラインだった時間を計算してください。結果を変数time_onlineに格納します。 - 変数
time_onlineを出力して確認してください。 - ユーザーのオンライン合計時間を計算し、結果を出力してください。
- ユーザーのオンライン平均時間を計算し、結果を出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# login and logout are already defined in the workspace
# Calculate the difference between login and logout: time_online
# Inspect the variable time_online
# Calculate the total time online
# Calculate the average time online