한국 사용자들의 R 패키지 이용 현황을 보여주려 한다.
RStudio 미러 서버가 전체 한국 사용자를 대변하기는 힘들테지만 RStudio 에디터의 기본 미러링 설정이 RStudio 서버로 되어 있으니 기본 설정 그대로 쓰는 사용자 습성을 볼때 어느정도 의미는 있을 거라 생각한다.
library(ggplot2)
library(lubridate)
library(plyr)
if (!require("devtools")) install.packages("devtools")
require("devtools")
# make sure you have Rtools installed first! if not, then run:
# install.packages('installr') install_Rtools()
install_github("installr", "talgalili") # get the latest installr R package
# or run the code from here:
# https://github.com/talgalili/installr/blob/master/R/RStudio_CRAN_data.r
require(installr)
# The first two functions might take a good deal of time to run (depending
# on the date range)
RStudio_CRAN_data_folder <- download_RStudio_CRAN_data(START = "2013-05-20",
END = "2013-06-13") # around the time R 3.0.0 was released
my_RStudio_CRAN_data <- read_RStudio_CRAN_data(RStudio_CRAN_data_folder)
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-20.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-21.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-22.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-23.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-24.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-25.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-26.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-27.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-28.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-29.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-30.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-05-31.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-01.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-02.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-03.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-04.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-05.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-06.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-07.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-08.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-09.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-10.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-11.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-12.csv.gz ..."
## [1] "Reading /tmp/RtmpbPdy1B/2013-06-13.csv.gz ..."
일단 이전 포스팅과 같이 데이터를 받아온 다음에….
my_RStudio_CRAN_data$date <- ymd(my_RStudio_CRAN_data$date)
all_cnt <- ddply(my_RStudio_CRAN_data, .(date), summarise, cnt = length(package))
ggplot(all_cnt, aes(date, cnt)) + geom_bar(stat = "identity") + scale_x_datetime(breaks = "2 days") +
theme_bw() + theme(axis.text.x = element_text(angle = 90))
kr_pkg_downloads <- subset(my_RStudio_CRAN_data, country == "KR")
nrow(kr_pkg_downloads)
## [1] 45470
cnt_down <- ddply(kr_pkg_downloads, .(package), summarise, cnt = length(r_os))
top30 <- arrange(cnt_down, desc(cnt))[1:30, ]
ggplot(top30, aes(reorder(package, cnt), cnt)) + geom_bar(stat = "identity") +
theme_bw() + theme(axis.text.x = element_text(angle = 90))
약 25일간의 국내 패키지 다운로딩 결과중에서 상위 30개의 결과를 보자면 흥미롭게도 KoNLP가 전체에서 21번째로 많이 사용하는 패키지로 나왔으며, 시각화 류의 패키지가 상위에 포진된 것을 볼 수 있는데 상위 결과만 놓고 보면 전체 통계하고 유사한 것을 볼 수 있다.
게다가 rJava가 1등으로 나온것은 아래 결과를 보면 RWeka, KoNLP가 이 패키지와 의존성이 걸려 있긴 하나 단독으로 이 패키지만 쓰이지 않는다는 것을 보면 좀 이례적인 결과가 아닐 수 없다. 살짝 rJava 설정을 사용자들이 하는데 어려움이 있을지 모른다는 예상도 드는데, 이 부분에 대해서는 책을 집필하면서 케어를 해야될 포인트로 보인다.
R 미러링 서버 로그 분석(2) by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.