{"word_count": 640, "character_count": 5506}
[MAJ]Maintenant que le package cartography est sur le CRAN, j'incite fortement les potentiels utilisateurs à préférer celui-ci plutôt que rCarto. Petite présentation ici.[/MAJ]Je suis récemment tombé sur ce post qui m'a ensuite mené à celui-ci. En m'inspirant de ces deux posts je me suis intéressé aux stats de rCarto. Combien de fois a-t-il été téléchargé? D'où a-t-il été téléchargé?Préparation des donnéesTélécharger les log journaliersJ'ai téléchargé directement l'ensemble des logs journaliers (au lieu d'utiliser l'API JSON de RStudio qui ne donne pas d'informations sur l'origine géographique des téléchargements).Le téléchargement des logs prend pas mal de temps.# liste des URL des logs à téléchargerstart &#60;- as.Date('2013-04-01')end &#60;- as.Date('2015-02-28')all_days &#60;- seq(start, end, by = 'day')year &#60;- as.POSIXlt(all_days)$year + 1900urls &#60;- paste0('http://cran-logs.rstudio.com/',                year,                '/',                all_days,                '.csv.gz')lurl &#60;- length(urls)# téléchargement des logsfor (i in 1:lurl) {  download.file(urls[i], sprintf("data/temp%i.csv.gz", i))}Comme proposé dans le post de Strenge Jacke! j'ai ensuite décompressé manuellement les archives.Sélectionner les téléchargements de rCarto uniquementCette étape prend elle aussi pas mal de temps.# selection des logs concernant un packagename_package &#60;- "rCarto"log_package &#60;- data.frame() for (i in 1:lurl) {  df.csv &#60;- read.csv(sprintf("/data/temp%i.csv", i))  my.package &#60;- which(df.csv$package == name_package)  log_package &#60;- rbind(log_package,                        df.csv[my.package, c("date","country","package")])}La table créée (log_package)contient trois champs (date, country et package)Créer un graphique des téléchargements mensuels# aggregation mensuellelog_package$date.short &#60;- strftime(log_package$date,                                    format="%Y-%m")log_package$dummy &#60;- 1mydf &#60;- aggregate(log_package$dummy,                   by = list(month = log_package$date.short),                   FUN = "sum")# Liste de tous les mois entre start et end# si jamais le package n'est pas téléchargé certains moismonthly_dl &#60;- seq(from = as.Date(start, "%Y-%m-%d"),                   to = as.Date(end,"%Y-%m-%d"),                   by = "month")monthly_dl &#60;- data.frame(month = substr(monthly_dl,1,7))monthly_dl &#60;- merge(monthly_dl, mydf, by = "month",  all.x = TRUE)names(monthly_dl)[2] &#60;- "nb_dl"monthly_dl[is.na(monthly_dl$nb_dl), "nb_dl"] &#60;- 0# Création du graphiquepng('nbdownload.png', width = 500, height = 400)par(bg = "grey80")barplot(height = monthly_dl$nb_dl,        names.arg = monthly_dl$month,        ylab = "nb. téléchargements",         col = "#920000", space = 0,         las = 2, cex.names =  0.7, cex.axis = 0.7)title("Téléchargements mensuels de rCarto", cex.sub = 0.7,      sub = "source : http://cran-logs.rstudio.com/")dev.off()Le package a été téléchargé 4155 fois sur la période. Il est téléchargé au minimum 100 fois par mois et au maximum 313. Il est également de plus en plus téléchargé.D'où a-t-il été téléchargé ?# aggregation géographiquelog_package$dummy &#60;- 1geo_package &#60;- aggregate(log_package$dummy,                   by = list(country = log_package$country),                   FUN = "sum")names(geo_package)[2] &#60;- "nb_dl"# cartographielibrary(rCarto)png('mapnbdownload.png', width = 640, height = 380)mapCircles(shpFile = "data/worldcountries.shp",            shpId = "ISO2", df = geo_package, dfId = "country",            var = "nb_dl", circleCol = '#920000',baseCol = "grey60",           posLeg = 'left',            author = "T. Giraud - 2015",           sources = "source : http://cran-logs.rstudio.com/",           width = 22, txtCex = 2.5,           title = "Répartition des téléchargement de rCarto",            legend = "Nombre de \ntéléchargement")dev.off()[caption id="attachment_521" align="aligncenter" width="640"] Cliquer sur l'image pour l'agrandir[/caption]Pour analyser dans le détail cette carte il faudrait avoir des données de référence sur l'utilisation de R (ou de RStudio, ou des packages) dans chacun des pays. Une solution pourrait être de comparer cette carte à celles d'autres packages (les x packages les plus populaires).Je n'ai essayé que pour le package ggplot2. En utilisant la part de chaque pays dans le total des téléchargements et en fixant la taille du plus grand cercle, les cartes suivantes sont comparables:[caption id="attachment_520" align="aligncenter" width="640"] Cliquer sur l'image pour l'agrandir[/caption][caption id="attachment_522" align="aligncenter" width="640"] Cliquer sur l'image pour l'agrandir[/caption]Une rapide comparaison (par rapport à la répartition des téléchargements de ggplot2 uniquement - 1345924 téléchargements sur la période!) révèle que rCarto est relativement plus utilisé en France, en Italie, en Chine, au Japon. En revanche rCarto est relativement moins utilisé dans le monde anglophone (USA, Canada, Royaume-Uni, Australie...). Je comprends bien l'utilisation plus importante en France, pour le reste, aucune idée... Bon, il ne s'agit que d'une partie des téléchargements du package (ceux fait via le CRAN de RStudio), j'ai quand même été assez surpris de l'utilisation croissante du package, en tout cas de ses téléchargements. Cela suit peut-être simplement l'augmentation du nombre d'utilisateurs de R ou de RStudio...Un prochain billet évoquera l'avenir du développement de rCarto...