2. n° 2www.eni-service.fr
Pourquoi utiliser le langage R pour vos projets Data (Science) ?
1. C'est quoi la Data Science ?
2. Qu'est-ce que le langage R et pourquoi l'utiliser pour vos
projets data ?
3. Comparaison R et Java sur un cas concret
4. Exemples de projets métiers réalisés avec R
5. Se former à R
6. Temps d'échanges sur vos problématiques data
3. n° 3www.eni-service.fr
Aline Deschamps
Data Scientist & développeuse et
formatrice R et Shiny
Fondatrice de la société « DACTA » (2016) :
accompagnement des entreprises dans la
valorisation de leurs données
Organisatrice des « Meetup R Nantes » et
du « Salon de la Data » à Nantes
7. n° 7www.eni-service.fr
Data Scientist ?
Connaissances en méthodes scientifiques d’analyses de données
(modélisations statistiques, méthodes mathématiques, algorithmes de
machine learning, …) et évaluation qualitative de ces méthodes
Compétences informatiques pour automatiser les méthodes mises en place
et pour les intégrer dans un processus global de traitement de données,
pourquoi pas en temps réel et/ou sur des gros volumes de données (« big
data »)
Compétences globales concernant la manipulation / gestion de données :
stockage, architecture, volumétrie, nettoyage, …
Ecoute et empathie : pour faire le lien entre les résultats scientifiques et le
domaine « métier » d’application des méthodes => interprétation /
utilisation des résultats d’analyses pour répondre à des besoins
9. n° 9www.eni-service.fr
Langage de programmation informatique pour les statistiques / la
data
Projet GNU fondé en 1993 sur l'environnement développé dans les
laboratoires Bell par John Chambers et ses collègues (le langage S)
Montée en puissance au fil du temps, surtout ces dernières années
avec l'engouement autour de la Data Science
Initialement plutôt utilisé dans les milieux universitaires mais de plus
en plus utilisé dans le monde de l'entreprise, par exemple chez :
Facebook, Twitter, Google, Firefox, The New York Times, Airbus, RTE,
Danone, ...
Qu’est-ce que R ?
10. n° 10www.eni-service.fr
Open source et gratuit
Multi-plateformes (Windows, Mac, Linux)
Permet de traiter la chaîne complète d’un projet « data » :
récupération des données, re-travail et manipulation des données,
calculs statistiques et algorithmes avancés, restitutions graphiques
variées (statiques, web, reporting, tableaux de bord, …)
Langage de programmation : possibilités quasi-illimitées et
interfaçage dans processus de développement complet
Grande communauté réactive : beaucoup de documentations, aide
en ligne et mises à jour régulières (nouveaux algo rapidement
existants en R)
Pourquoi utiliser R ?
11. n° 11www.eni-service.fr
Quasi tous les formats de données existants sont accessibles en R :
ASCII plat, CSV
Excel
Données de logiciels stats (SAS, SPSS Statistics, Weka, Stata, …)
XML, JSON
Bases de données SQL (MySQL, PostgreSQL, SQL Server, …)
Bases de données NoSQL (MongoDB, Cassandra, Neo4J, CouchDB,
MonetDB, …)
API (packages spécifiques ou connexion API REST)
R et les formats de données
12. n° 12www.eni-service.fr
R fonctionne avec un système de « packages »
Enormément de thématiques abordées dans ces packages : Finance,
Ecologie, Economie, Web, Machine Learning, Psychométrie, Sciences
Sociales, Natural Language Processing, Etudes cliniques, …
Nombreux algorithmes spécifiques « machine learning / data science /
big data / intelligence artificielle » ET possibilités d’interfaçage avec ce
type d’algo présents dans d’autres technologies (ex: « h2o »,
« tesseract », « cognizer » pour IBM Watson, …)
« Nouveautés » algorithmiques / modèles : très rapidement présentes
dans R grâce à la grande communauté (aussi bien dans le privé que la
recherche académique)
Open source : accessibilité du code et documentation associée
R et les algorithmes
13. n° 13www.eni-service.fr
Nombreux packages graphiques : dataviz « statiques » ou
« dynamiques » (JS), cartographie, 3D, …
Reporting automatisés : Word, PDF, PowerPoint, HTML, …
Tableaux de bord web (package « Shiny »)
R et la Data Visualisation
14. n° 14www.eni-service.fr
Ressources R
Forum francophone Developpez.com dédié à R
Forum « RStudio Community » (EN)
Liste des packages R par thème
« R Graph Gallery » (aggrégation de DataViz R avec leur code)
« Rbloggers » (aggrégation d’articles de blog R)
Nombreux meetup, notamment en France : « Meetup R Nantes »
Rencontres annuelles : Rencontres R France (2018 : Rennes),
rencontres mondiales = useR! (2019 : Toulouse)
16. n° 16www.eni-service.fr
Génération d’une matrice de températures aléatoires : lignes = villes
de France / colonnes = années
Calcul de la température moyenne de chaque année (colonne)
Evaluation du temps de calcul
Exemples : températures annuelles moyennes
31. n° 31www.eni-service.fr
Le package R « shiny » permet de développer des applications web /
tableaux de bord data, proposant des résultats de calculs
mathématiques / algorithmes statistiques / data visualisation
dynamiques, avec lesquels l’utilisateur peut intérargir, le tout SANS
avoir besoin de savoir coder en HTML, CSS ou JavaScript
Le package R « shiny »
32. n° 32www.eni-service.fr
R pas « mieux » que JAVA (ou autre langage), MAIS à
envisager quand vous avez une problématique Data
(Science), notamment avec calculs statistiques et/ou data
visualisation avancées !
D’ailleurs R peut s’interfacer avec de nombreux autres
langages, notamment JAVA mais aussi Python ;-)
CONCLUSION
35. n° 35www.eni-service.fr
Données : données des déplacements de véhicules = données géospatiales
Problématique : données géospatiales = compliquées à gérer et à visualiser,
besoin d’une interface simple de visualisation, notamment sur un fond de
carte, permettant également la mise en place de calculs statistiques et
modèles de machine learning
Solution : utilisation de R (notamment pour les algorithmes statistiques et
machine learning) et de « R – Shiny » pour la partie restitution web
Quelques exemples d’analyses présentes dans l’outil :
Analyse des endroits dangereux basée sur les rapports d’incidents Waze
Analyse de sentiments des tweets (messages Twitter) postés à propos de
Waze / du traffic, en temps réel
Outil interactif pour repérer les tendances dans les chemins empruntés
Ressources : Daniel Marcous, Google, Waze Data Wizard - « Outsmarting traffic with R & Shiny »
Analyse du traffic chez Waze avec R et Shiny
37. n° 37www.eni-service.fr
Détection de fraude bancaire en temps réel
Données : données de transactions de cartes bancaires
Problématique : détection de fraudes bancaires en temps réel sur un
gros volume de données (1 million de transactions par seconde)
Solution : utilisation de SQL Server 2016 + R pour la partie analyse
statistique
Analyses mises en place : algorithme de machine learning = « gradient-
boosted tree model » pour prédire la probabilité qu’une transaction
effectuée avec une carte bancaire est frauduleuse
Ressources : Wee Hyong Took, Microsoft, Senior Data Scientist - « Using R to detect fraud at 1 million
transactions per second »
39. n° 39www.eni-service.fr
Données clients et ventes de produits spécifiques sur tout le territoire
français, historique sur de nombreuses années
Objectif : exploiter ces données « dormantes », améliorer le processus de
vente en comprenant mieux les goûts et profils clients/achats
Réalisations : tableau de bord « R – Shiny » permettant des requêtes
complexes sur les données selon des règles métiers pré-définies, accessibles
à tous en interne via une interface utilisateur web simple et efficace
Analyses statistiques avec R : mise en place d’un algorithme de prévision des
stocks pour un type de produit spécifique, afin d’optimiser les relances
d’achats / analyse des combinaisons de produits vendus
Analyses de données de ventes produits
41. n° 41www.eni-service.fr
Projet « Interactive Data Light » : lampadaires intelligents à détection de
présence et captation d’informations sur l’environnement urbain, en phase
d’expérimentation à Nantes depuis avril 2018
Données : consommation énergétique, fréquences de passages, données
météo, pollution sonore, pollution de l’air, données d’électricité provenant
des relevés des compteurs Linky, …
Objectifs : quantifier les économies d’énergies réalisées, analyser
l’environnement urbain, détecter des liens entre les données relevées,
proposer de nouveaux services et/ou une expérience améliorée aux citoyens
Réalisations avec R : gestion de données en grand volume (IoT), algorithmes
de calculs sur ces données, outil de restitution sous forme de tableau de
bord web (« R – Shiny ») présentant des résultats résumés sous forme de
data visualisations dynamiques et les résultats provenant des analyses
statistiques (ex: analyse de signicativité des économies d’énergie réalisées)
Analyses de données objets connectés Smart City
43. n° 43www.eni-service.fr
Vidéo e-learning « Les fondamentaux de la programmation R pour la
Data Science »
Video e-learning « Travailler avec des données dans R : CSV, Excel,
SQL, API, et NoSQL » (à venir prochainement)
Formation en présentiel « Les fondamentaux du langage R » - 6 et 7
décembre 2018 / dates sur demande
Formation en présentiel « Initiation au Machine Learning avec le
langage R » - 13 septembre 2018 / dates sur demande
Se former à R avec l’ENI