#7FavPackages chez Data Bzh

Le 16 août dernier, David Robinson lançait le hashtag #7FavPackages, un appel aux internautes pour connaître les packages favoris des aficionados R de la twittosphère. La tentation était trop grande pour ne pas vous livrer notre version.

Comme nous avions envie de vous donner plus d’infos qu’une simple liste sur Twitter, voici une liste des 7 packages les plus utilisés par l’équipe de Data Bzh.

1. L’incontournable : ggplot2

À l’heure où nous écrivons ces lignes, il est difficile de passer outre les incontournables du tidyverse (l’univers de Hadley Wickham) — et nos lecteurs ayant passé un peu de temps sur R connaissent bien ce package qui est devenu la référence en terme de visualisation de données : ggplot2, par Mr Wickham.

Package immanquable pour les amouReux de dataviz, ggplot2 est un des plus utilisés par l’équipe de Data Bzh : cet outil ultra puissant nous est indispensable réaliser nombreuses des visualisations présentes sur le site. Et pour cause : même s’il peut être complexe à prendre en main de prime abord, il s’agit d’un package puissant et hautement paramétrable, basé sur la grammar of graphics, qui permet de réaliser une gamme très complète de visualisation de vos données.

2. Le nettoyeur : tidyr

Visualiser correctement des données demande d’avoir des données bien rangées. Ce qui est (très) loin d’être le cas des datasets à l’état « sauvage ». Raison pour laquelle tidyr est l’un des packages « réflexes », à qui nous faisons appel quelques lignes après le chargement d’un jeu de données. L’objectif ? Ranger, rassembler, séparer le dataset pour le rendre lisible, compréhensible et facilement utilisable avec ggplot2.

3. L’arrangeur : dplyr

Cousin germain de tidyr, dplyr est le deuxième package indispensable du data wrangling. Là où le package précédent permet de ranger en classant (donc dans l’ensemble sans toucher aux données de base), dplyr est plus indiqué pour avoir des informations sur ses données en les modifiant (filtrer selon un critère, résumer, créer une nouvelle variable…).

Les deux vous semblent relativement proches ? Et vous avez raison. Pour tout vous dire, les deux s’utilisent très souvent l’un avec l’autre.

dplyr and tidyr

4. L’horloger : lubridate

Si vous lisez régulièrement nos billets de blogs, vous savez que très souvent, une variable temporelle entre en jeu. Et si vous faite un brin de programmation, vous savez également que les dates, et surtout leurs formats, restent un véritable casse tête. Quand on connaît la quasi anarchie du format des données en open data, il est indispensable de disposer d’un package robuste pour pouvoir gérer les dates en toute tranquillité. Pour cela, nous nous tournons vers lubridate, lui aussi package du tidyverse, qui vous permet une gestion des données temporelles en toute simplicité (ou presque).

5. Le dictionnaire : tm

Lecteurs aficionados de Data Bzh, vous avez déjà vu passer nos analyses social-media, notamment avec la série « Un mois à #Rennes« . Pour tirer de l’information des tweets de nos corpus, nous utilisons le package tm, véritable boîte à outils de text-mining avec R.

Vous souhaitez en savoir un peu plus sur l’utilisation de ce package ? Ça tombe bien, nous avons fait une série de billets sur son usage.

6. L’interrogateur : rjson

Behind the scene (comme disent nos amis britanniques), Data Bzh effectue des requêtes sur les API pour puiser de l’information indispensable à la rédaction de contenus. Des interfaces qui, bien souvent, renvoient des résultats JSON — raison pour laquelle nous utilisons rjson, un package qui permet de simplifier la transition entre ce format et l’interface de notre logiciel favori. Un exemple ? rgeoapi, ou encore rpinterest, deux packages qui reposent sur une fonction importée de rjson, utilisée pour interroger la GéoAPI et l’API de Pinterest.

7. Le coordinateur : magrittr

magrittr et sa fonction %>% font partie des musts de l’organisation de vos projets avec R. Comment ? En passant son argument de gauche en premier argument de la fonction de droite, cette fonction vous facilite la lecture (et par extension la modification / correction) de vos scripts. En clair, sort(x) %>% head() est l’équivalent de head(sort(x)), mais l’un est plus lisible que l’autre, surtout si l’on souhaite effectuer beaucoup de modification sur un objet à la suite.

Ces packages vous parlent ? Vous en avez d’autres dans vos listes ? Dites le nous sur Twitter !

Rédigé par: Colin FAY

Créateur et rédacteur en chef de Data Bzh.