CRAN掲載パッケージのダウンロード数やパッケージ履歴などの統計情報を取得できるパッケージの紹介です。統計情報は図で表示可能です。例えば「R」のバージョン推移のダウンロード数を取得することが可能です。
パッケージバージョンは0.6.0。実行コマンドはwindows 11のR version 4.1.3で確認しています。
パッケージのインストール
下記、コマンドを実行してください。
#パッケージのインストール
install.packages("packageRank")
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
#パッケージの読み込み
library("packageRank")
#パッケージのダウンロード数を確認:cranDownloadsコマンド
#"last-day","last-week","last-month"の期間を指定:whenオプション
#"yyyy-mm-dd","yyyy-mm","yyyy"の期間で指定:from/toオプション
GetData <- cranDownloads(packages = c("ggfocus", "compareDF"),
when = "last-week",
from = NULL, to = NULL)
#データ構成:取得データはlist class
str(GetData)
#List of 5
#$ packages : chr [1:2] "ggfocus" "compareDF"
#$ cranlogs.data:'data.frame': 14 obs. of 4 variables:
# ..$ date : Date[1:14], format: "2022-03-09" "2022-03-10" ...
# ..$ count : num [1:14] 18 10 12 7 10 9 13 82 32 48 ...
# ..$ cumulative: num [1:14] 18 28 40 47 57 66 79 82 114 162 ...
# ..$ package : chr [1:14] "ggfocus" "ggfocus" "ggfocus" "ggfocus" ...
#$ when : chr "last-week"
#$ from : NULL
#$ to : NULL
#- attr(*, "class")= chr "cranDownloads"
#ダウンロード数
head(GetData$cranlogs.data)
# date count cumulative package
#1 2022-03-09 18 18 ggfocus
#2 2022-03-10 10 28 ggfocus
#3 2022-03-11 12 40 ggfocus
#4 2022-03-12 7 47 ggfocus
#5 2022-03-13 10 57 ggfocus
#6 2022-03-14 9 66 ggfocus
#プロット
plot(GetData, multi.plot = TRUE)
#もしくは
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
install.packages("tidyverse");require("tidyverse")
}
ggplot(GetData$cranlogs.data, aes(x = date, y = count,
group = package, color = package)) +
geom_line()
###例えば「R」自体のダウンロード数#####
RData <- cranDownloads(packages = "R", from = 2020, to = 2022)
#プロット;Rバージョン変移付き
plot(RData, multi.plot = TRUE,
r.version = TRUE)
########
#パッケージダウンロードランキングを取得:packageRankコマンド
#http://cran-logs.rstudio.comから指定日のCRANLogデータがダウンロードされます
RankData <- packageRank(package = c("ggfocus", "compareDF"), date = "2022-03-15")
#確認
RankData
# date packages downloads rank percentile
#1 2022-03-15 ggfocus 13 15,978 of 21,013 19.7
#2 2022-03-15 compareDF 113 1,959 of 21,013 90.6
#プロット
plot(RankData, multi.plot = TRUE)
########
#パッケージの更新履歴を取得:packageHistoryコマンド
packageHistory(package = c("ggfocus", "compareDF"))
#[[1]]
# Package Version Date Repository
#1 ggfocus 0.8 2018-05-29 Archive
#2 ggfocus 0.9 2019-01-07 Archive
#3 ggfocus 1.0.0 2020-01-23 CRAN
#[[2]]
#Package Version Date Repository
#1 compareDF 1.0.0 2016-03-08 Archive
#2 compareDF 1.1.0 2017-01-18 Archive
#3 compareDF 1.2.0 2017-09-11 Archive
######途中省略
#18 compareDF 2.3.1 2021-01-06 Archive
#19 compareDF 2.3.2 2021-10-13 Archive
#20 compareDF 2.3.3 2022-03-12 CRAN
出力例
・cranDownloadsコマンドで取得したデータ

・例えば「R」自体のダウンロード数

・packageRankコマンドで取得したデータ

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