始める無料で始める

日時も扱いやすいです

Date オブジェクトと同様に、POSIXct オブジェクトでもプロットや計算ができます。

例として、この演習では RStudio の CRAN ミラーのダウンロードログを使って、新しい R バージョンがどれくらい早くダウンロードされるかを確認します。

R 3.2.0 は "2015-04-16 07:13:33" にリリースされたので、cran-logs_2015-04-17.csv には 16 日、17 日、18 日のダウンロードのランダムサンプルが含まれています。

この演習はコースの一部です

Rで扱う日付と時刻

コースを見る

演習の手順

  • read_csv() を使って cran-logs_2015-04-17.csv を読み込みます。
  • 各ダウンロードについてどんな情報があるかを見るために、logs を表示します。
  • R 3.2.0 のリリース時刻を POSIXct オブジェクトとして保存します。
  • datetime 列が release_time より大きい値でフィルタリングして、3.2.0 への最初のリクエストがいつ行われたかを調べます。
  • 最後に、3.2.0 と一つ前のバージョン 3.1.3 のダウンロード時刻のヒストグラムを作成して、ダウンロードの増え方を確認します。コードの大部分は用意してあるので、x 美的属性に datetime 列を指定するだけで大丈夫です。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import "cran-logs_2015-04-17.csv" with read_csv()
logs <- read_csv(___)

# Print logs
___

# Store the release time as a POSIXct object
release_time <- ___("2015-04-16 07:13:33", tz = "UTC")

# When is the first download of 3.2.0?
logs %>% 
  filter(___,
    r_version == "3.2.0")

# Examine histograms of downloads by version
ggplot(logs, aes(x = ___)) +
  geom_histogram() +
  geom_vline(aes(xintercept = as.numeric(release_time)))+
  facet_wrap(~ r_version, ncol = 1)
コードを編集して実行