SlideShare une entreprise Scribd logo
1  sur  96
Télécharger pour lire hors ligne
Université Abdelmalek Essaadi
Faculté des Sciences et Techniques Tanger
Département Mathématique
2éme Année cycle ingénieurs Génie industriel
RAPPORT DE PROJET
BIG DATA
Page | 2
MINIPROJETBIGDATA
Remerciement :
Avant tout, nous devons remercier Dieu tout puissant qui nous a
donné le courage et la force pour mener ce travail à terme. En
premier lieu nous tenons à remercier vivement notre encadrant du
module Monsieur Rachid EL HALIMI, Professeur et chercheur à la
Faculté des Sciences et technique de Tanger, pour ses conseils avisés
et pour la confiance qu’il nous a accordé tout au long de notre
formation de ce module, nous avons grandement apprécié votre
soutien, votre implication et votre expérience tout au long de ce
semestre.
Page | 3
MINIPROJETBIGDATA
Sommaire
Remerciement :.................................................................................................................... 1
Partie 1 : Le Big Data, introduction, techniques et outils. ............................................. 6
Comment le big data est-il apparu ?............................................................................... 6
Définition de big data : ..................................................................................................... 6
L’historique :....................................................................................................................... 7
Big data en chiffres :.......................................................................................................... 7
Les objectifs du big data :................................................................................................. 8
Les domaines d’applications de Big data :.................................................................... 8
• Les caractéristiques de Big Data :........................................................................... 9
• Les enjeux du Big Data :.......................................................................................... 11
Les problèmes de big data : ........................................................................................... 12
• Big Algebra :.......................................................................................................... 12
• Big Noise :.............................................................................................................. 12
• Big time :................................................................................................................ 13
• Big structures : ..................................................................................................... 13
• Sécurité :................................................................................................................ 13
1. L’automatisation de la discrimination : ...................................................... 13
2. Les abus gouvernementaux :......................................................................... 13
3. La vente aux enchères des données :........................................................... 13
Les techniques statistiques de Big Data :........................................................................ 14
1. Les règles d’association :........................................................................................ 14
Définition : .................................................................................................................... 15
Extraction des règles d’association :........................................................................ 15
Application sur RStudio : ........................................................................................... 17
2. Les arbres de classification :.................................................................................. 23
Exemple : ....................................................................................................................... 23
3. L’analyse de régression :........................................................................................ 24
La définition :................................................................................................................ 24
Les Types d'analyses de régression :....................................................................... 24
Ia régression linéaire simple..................................................................................... 25
Les outils en R :..................................................................................................................... 28
VirtualBox : ....................................................................................................................... 28
✓ Hadoop....................................................................................................................... 29
✓ Storm.......................................................................................................................... 29
Page | 4
MINIPROJETBIGDATA
✓ Hadoop MapReduce ................................................................................................ 29
✓ Cassandra.................................................................................................................. 30
Les fonction rx-XXXXXX ou Rx-XXXXXX : .................................................................... 30
La bibliothèque RevoScaleR R :..................................................................................... 31
Données Exemple d’application : ................................................................................. 32
Partie 2: La cartographie ........................................................................................................ 39
I. Cartographies, Cartes:................................................................................................. 39
1. Qu’est-ce que la cartographie : ................................................................................ 39
2. Carte :......................................................................................................................... 40
3. Cartographie sous R : théorie et pratique :......................................................... 42
3.1 Cartographie sous R : théorie........................................................................ 42
3.1.1 Le fond de carte........................................................................................ 43
3.1.2 Données géolocalisées............................................................................ 44
3.1.3 Système de coordonnées et projection cartographique.................. 45
3.2 Cartographie sous R : pratique ..................................................................... 47
CONCLUSION ................................................................................................................... 59
Partie 3 : ACP (Analyse en Composantes Principales) : ............................................... 60
Généralité :........................................................................................................................ 60
Position du Problème: .................................................................................................... 60
1-LES DONNÉES............................................................................................................. 60
Principe de la méthode ACP : ........................................................................................ 61
3. LE CHOIX DE LA DISTANCE ENTRE INDIVIDUS : .................................................... 63
4. INERTIE TOTALE :........................................................................................................ 64
LA SOLUTION DU PROBLÈME POSÉ :............................................................................ 66
2. PROPRIÉTÉS DES COMPOSANTES PRINCIPALES :................................................. 67
3. REPRÉSENTATION DES INDIVIDUS : ........................................................................ 67
4. REPRÉSENTATION DES VARIABLES......................................................................... 68
5. INTERPRETATION DES « PROXIMITÉS » ENTRE VARIABLES.............................. 69
III. VALIDITÉ DES REPRÉSENTATIONS : ...................................................................... 70
1. CRITÈRE GLOBAL :..................................................................................................... 70
2. CRITÈRES INDIVIDUELS :.......................................................................................... 71
3. REPRÉSENTATION DES VARIABLES :...................................................................... 72
4. INTERPRÉTATION EXTERNE : VARIABLES ET INDIVIDUS SUPPLÉMENTAIRES
(ILLUSTRATIFS) : .......................................................................................................... 73
4. Etude de cas sous « Logiciel XLSTAT »................................................................... 74
Page | 5
MINIPROJETBIGDATA
Conclusion :........................................................................................................................... 81
Annexe : ................................................................................................................................. 82
Page | 6
MINIPROJETBIGDATA
Partie 1 : Le Big Data, introduction,
techniques et outils.
Comment le big data est-il apparu ?
L’explosion quantitative des données numériques a obligé les
chercheurs à trouver de nouvelles manières de voir et d’analyser le
monde. Il s’agit de découvrir de nouveaux ordres de grandeur
concernant la capture, la recherche, le partage, le stockage, l’analyse
et la présentation des données.
Ce sont les informations provenant de partout : messages que nous
nous envoyons, vidéos que nous
publions,informations climatiques,signauxGPS, enregistrements
transactionnels d’achats en ligne et bien d’autres encore
Le volume de données numériques ne cesse d’augmenter. Cette
prolifération des données est due à la numérisation croissante de
tous les domaines du web et de l’économie. C’est dans ce contexte
que le big data est né, au moyen de la fusion de diverses sources de
données, structurées ou non structurées, telles que :
– L’utilisation d’internet sur les mobiles
– Les réseaux sociaux
– La géolocalisation
– Le cloud
– Le streaming des médias.
Définition de big data :
Littéralement, ces termes signifient mégadonnées, grosses données
ou encore données massives. Ils désignent un ensemble très
volumineux de données qu’aucun outil classique de gestion de base
de données ou de gestion de l’information ne peut vraiment
travailler. En effet, nous procréons environ 2,5 trillions d’octets de
données tous les jours.
Le Big data est appliqué dans tous les domaines ayant rapport au
Web. Un exemple d’outil de big data dans le domaine de l’e-
commerce est la fameuse phrase « ceux qui ont acheté le produit X
ont aussi acheté… ».
Page | 7
MINIPROJETBIGDATA
L’historique :
Ces données sont baptisées Big Data ou volumes massifs de données.
Les géants du Web, au premier rang desquels Yahoo (mais aussi
Facebook et Google), ont été les tous premiers à déployer ce type de
technologie.
Selon les archives de la bibliothèque numérique de l’Association for
Computing Machinery (ou ACM) dans des articles scientifiques
concernant les défis technologiques à relever pour visualiser les
« grands ensembles de données », cette appellation est apparue en
octobre 1997.
Big data en chiffres :
Les chiffres du Big Data
permettent de comprendre à
quel point la collecte et
l’analyse de données sont en
train de bouleverser toutes les
industries
On peut citer les chiffres du Big
data suivants :
• Le volume de données
mondiales double tous les
trois ans
• Les prédictions pour le
futur :
• 75% des entreprises
comptent implémenter l’IA
et le Big Data
• 60% des fabricants
mondiaux utiliseront le Big
Data
• 90% des données
mondiales ont été créées au
Page | 8
MINIPROJETBIGDATA
cours des deux dernières années
• 1,7 mégabyte de données sera créé chaque seconde par chaque
personne en 2020
Les objectifs du big data :
Le Big Data est une technologie formidable permettant notamment
aux entreprises de réduire leurs coûts, de prendre de meilleures
décisions, ou encore de créer de nouveaux produits / services
correspondant à la demande des clients. Toutefois, le Big Data n’en
est encore qu’à ses balbutiements, et continue d’évoluer en
permanence.
Les domaines d’applications de Big data :
Le big data est utilisé partout, dans tous les secteurs de la vie
quotidienne et on trouve généralement :
–La recherche médicale : grâce à l’évaluation des données massives,
les médecins peuvent trouver de meilleures solutions de thérapie et
de traitement pour leurs patients.
– L’industrie : grâce à l’utilisation des données des machines de la
chaîne de production par exemple, les entreprises peuvent
augmenter l’efficacité de leur production et travailler de manière
plus durable.
– Economie : il permet aux entreprises de mieux connaitre leurs
clients et de leur proposer des offres toujours plus adaptées à leurs
besoins.
– Marketing : le big data est utilisé dans le marketing pour mieux
cibler les clients. L’objectif est entre autres d’améliorer les relations
avec les consommateurs et d’augmenter le taux de conversion.
– Lutte contre la criminalité : le gouvernement et les services de
Page | 9
MINIPROJETBIGDATA
sécurité ont également recours au big data, par exemple dans le
cadre de la lutte antiterroriste ou de la lutte anti-blanchiment.
– Secteur bancaire …
• Les caractéristiques de Big Data :
Parmi les utilisateurs les
plus enthousiastes du Big
Data, on retrouve les
gestionnaires et les
économistes. Ces
derniers définissent ce
phénomène par la règle
des 5V(Volume, Velocity,
Variety, Veracity, Value)
1. Le volume :
Le volume correspond à la masse d’informations produite chaque
seconde. Selon des études, pour avoir une idée de l’accroissement
exponentiel de la masse de données, on considère que 90 % des
données ont été engendrées durant les années où l’usage d’internet
et des réseaux sociaux a connu une forte croissance.
2. La vélocité :
La vélocité équivaut à la rapidité de l’élaboration et du déploiement
des nouvelles données. Par exemple, si on diffuse des messages sur
les réseaux sociaux, ils peuvent devenir « viraux » et se répandre en
un rien de temps. Il s’agit d’analyser les données au décours de leur
Page | 10
MINIPROJETBIGDATA
lignée (appelé parfois analyse en mémoire) sans qu’il soit
indispensable que ces informations soient entreposées dans une base
de données.
3. La variété :
Seulement 20% des données sont structurées puis stockées dans
des tables de bases de données relationnelles similaire à celles
utilisées en gestion comptabilisée. Les 80% qui restent sont non-
structurées. Cela peut être des images, des vidéos, des textes, des
voix, et bien d’autres encore… La technologie Big Data, permet de
faire l’analyse, la comparaison, la reconnaissance, le classement des
données de différents types comme des conversations ou messages
sur les réseaux sociaux, des photos sur différents sites etc. Ce sont les
différents éléments qui constituent la variété offerte par le Big Data.
4. La véracité :
La véracité concerne la fiabilité et la crédibilité des informations
collectées. Comme le Big Data permet de collecter un nombre indéfini
et plusieurs formes de données, il est difficile de justifier
l’authenticité des contenus, si l’on considère les post Twitter avec les
abréviations, le langage familier, les hashtags, les coquilles etc.
Toutefois, les génies de l’informatique sont en train de développer de
nouvelles techniques qui devront permettre de faciliter la gestion de
ce type de données notamment par le W3C.
5. La valeur :
La notion de valeur correspond au profit qu’on puisse tirer de l’usage
du Big Data. Ce sont généralement les entreprises qui commencent à
obtenir des avantages incroyables de leurs Big Data. Selon les
Page | 11
MINIPROJETBIGDATA
gestionnaires et les économistes, les entreprises qui ne s’intéressent
pas sérieusement au Big Data risquent d’être pénalisées et écartées.
Puisque l’outil existe, ne pas s’en servir conduirait à perdre un
privilège concurrentiel.
• Les enjeux du Big Data :
Le secteur (Big Data) novateur en lien avec les nouvelles technologies
répond à des enjeux stratégiques en vue de développer des produits
répondant aux besoins des consommateurs.
1. Développer les ventes :
Avec des statistiques concrètes sous la main, les entreprises tirent
désormais profit des informations à leur disposition pour proposer
des produits ou services susceptibles d’intéresser les
consommateurs. Elles peuvent ainsi espérer engranger un maximum
de bénéfices tout en évitant les pertes liées aux coûts de
développement de produits qui ne marchent pas.
2. Le Big Data au service du marketing :
Les processus analytiques des données sont centralisés autour d’un
référentiel connaissance client afin de réunir les applications métiers
propres à chaque canal de communication. Il convient ensuite de
mettre en place des solutions prédictives qui optimiseront les offres
proposées aux clients, les campagnes de communication et par
extension, les ventes.
De fait, l’analyse des données centralisées permet à une entreprise de
proposer à une clientèle bien définie les bons produits au bon
moment en s’appuyant sur les bons messages.
Page | 12
MINIPROJETBIGDATA
3. Le triage et l’analyse des données :
Les professionnels du Big Data recourent non seulement à la
statistique proprement dite, mais aussi au « machine learning » ou
intelligence artificielle pour perfectionner l’analyse et l’exploitation
des données. Actuellement, l’enjeu est tel que les entreprises ont tout
intérêt à utiliser le Big Data pour faire face à la concurrence et doper
leur croissance.
Les problèmes de big data :
Le big Data s’intéresse à éviter les choses suivantes :
• Big Algebra :
Lorsqu’il élabore une solution big data pour résoudre un problème
donné, le « data scientist » ressemble beaucoup à un alchimiste.
Préparation des données, choix et paramétrage de la méthode de
traitement de données sont généralement des étapes difficiles.
• Big Noise :
Les spécialistes du « Data Mining » savent bien que l’accumulation de
données ne suffit pas pour extraire des informations utiles.
L’existence d’un signal de bruit ne permet pas toujours d’extraire les
données voulues et on explique ça selon la figure suivante :
Page | 13
MINIPROJETBIGDATA
• Big time :
La question du temps devient une dimension essentielle de la
recherche en Big Data, Par ailleurs, l’intégration de la dimension
temporelle est mal traitée dans le big data.
• Big structures :
Les problèmes de très grandes masses de données couvrent des
types de données de nature et de structures bien plus variées :
images, vidéos, larges corpus de livres
• Sécurité :
Le Big Data représente également un risque de sécurité pour la
confidentialité et on trouve généralement les risques liés à la
sécurité :
1. L’automatisation de la discrimination :
Le Big Data tend à automatiser la discrimination. Malgré les avancées
réalisées dans le domaine du Big Data, les lois sur la protection n’ont
pas évolué.
2. Les abus gouvernementaux :
Le nombre de bases de données gouvernementales américaines est
plus élevé que jamais auparavant. Le FBI par exemple collecte des
données personnelles comme le nom, les pseudonymes, l’origine
ethnique, le genre, le lieu et la date de naissance, le numéro de
sécurité sociale, le numéro de passeport, l’adresse, les numéros de
téléphone, les photos, les empreintes digitales, les numéros de
compte bancaire, et l’emploi des citoyens.
3. La vente aux enchères des données :
Page | 14
MINIPROJETBIGDATA
De nombreuses entreprises collectent et vendent les données des
utilisateurs, permettant d’établir des profils d’individus. Les
entreprises peuvent désormais savoir si une femme est enceinte, si
une personne est homosexuelle ou si elle est atteinte d’un cancer
avant même qu’elle ne le révèle à ses proches. Aucune loi ne protège
réellement les consommateurs contre de tels agissements. Jusqu’à ce
que des lois pour la protection de la confidentialité soient votées, ces
pratiques continueront.
Comme un titre d’exemple, l’utilisation de données personnelles pour
la campagne de Trump.
Les techniques statistiques de Big
Data :
Selon IDC Canada, une firme de recherche en informatique basée à
Toronto, le Big Data est l’un des trois éléments les plus importants en
2013. Dans cette vision, il existe 7 techniques d’analyse du Big Data
largement utilisées. Au cours des 12 prochains mois :
1- Les règles d’association
2- Les arbres de classification
3- Les algorithmes génétiques
4- La Machine Learning
5- L’analyse de régression
6- L’analyse de sentiments
7- L’analyse de réseaux sociaux
1. Les règles d’association :
Page | 15
MINIPROJETBIGDATA
Définition :
Une règle d’association est dite « Bonne » S’elle est une règle avec un
Support et une confiance
élevée.
Extraction des règles d’association :
Soit un ensemble des produits organisées selon la chose suivante :
Tout d’abord, il faut choisir LE SUPPORT MINIMUM, or à partir de ce
schéma, on trouve la chose suivante :
Page | 16
MINIPROJETBIGDATA
1
On trouve que C14=4, C24 =6, C34 =4 et C44 =1
On prend par exemple le Support minimum 2
L’item maximal est {P1, P2, P3} car il est le plus fréquent
Pour les itemset, on teste toutes les combinaisons possibles, alors on
a :
Pour chaque {Pi,Pj} i≠j , sauf {P1,P4}, {P2, P4}, {P3, P4} car son support
est inférieur au support minimal . On teste son support et sa
confiance selon la chose suivante :
Souvent, on trouve que malgré les paramètres « support et confiance
» sont très élevés mais la méthode reste en général n’est pas
intéressante. D’où, c’est pour cela il existe des autres paramètres ‘on
dit des autres mesures’ avancés comme
1
Les chiffres colorés en bleu indiquent le support absolu.
Page | 17
MINIPROJETBIGDATA
* Lift = 1 -> La règle ne sert
absolument à rien…
Application sur RStudio :
Prenons l’exemple des femmes (quelquefois il existe aussi des
hommes qui utilisent ça !!) utilisent des produits cosmétiques.
On a pris une population de 1000 individus utilisent la Liste des
produits cosmétiques suivantes :
Le nom du produit dans le
fichier CSV.2
Bag
Blush
Nail Polish
Brushes
Concealer
Eyebrow Pencils
Bronzer
Lip liner
Mascara
2
Merci au Mr Bharatendra Rai.
Director, Master of Science Technology Management Program; Chair, Dept. of Decision & Info Sciences
at UMass Dartmouth , qui a m’envoyé cette base de données
Page | 18
MINIPROJETBIGDATA
Eye shadow
Foundation
Lip Gloss
Lipstick
Eyeliner
On passe maintenant aux simulations, on ouvre le logiciel et on lit
notre fichier selon le code suivant :
On lit le fichier en cliquant sur le fichier dans la zone de DATA, on
trouve alors :
D’accourd , maintenant on va jouer avec ces données :
1- Premièrement on ouvre les bibliothèques ‘arules’ et
‘arulesViz’
Page | 19
MINIPROJETBIGDATA
2- Pour bien visualiser les données, on applique la fonction
Summary , on aura donc :
Par exemple, on sait que 457 des individus utilisent l’Eyeliner,
les autres n’utilisent pas (543).
3- Maintenant, on cherche à savoir les règles d’associations entre
les différents items, on applique donc la fonction apriori :
Page | 20
MINIPROJETBIGDATA
On a construit 68880 règles, on doit tout simplement filtrer ces
résultats en basant sur le support et la confiance et des autres
paramètres comme : la longueur de la règle (le minimum et le
maximum) :
On a trouvé :
On a trouvé 15 règles d’associations, on a les affichés en utilisant la
fonction inspect et ça selon la chose suivante :
Page | 21
MINIPROJETBIGDATA
Ces règles ne sont pas intéressantes car pour chaque règle on
observe qu’il s’agit d’une règle de « Si l’individu n’achète pas Bag
Alors n’achète pas Brushes « ce qui en fait n’est pas intéressant :
Donc il faut jouer sur le support et la confiance. En plus de ça, on
prend que les individus qui utilisent ‘Foundation’.
Pour un support de 0.01 et une confiance de 0.7, on trouve 19 règles
On les affiche une autre fois en utilisant la même fonction :
Page | 22
MINIPROJETBIGDATA
Pour tracer les courbes, on applique la fonction plot() qui se trouve
dans la bibliothèque ‘arulesViz’
On trouve :
Page | 23
MINIPROJETBIGDATA
On voit bien que la partie encadrée en bleu constitue une partie très
importante car elle a un bon support, bonne confiance et un lift
intéressant, en comparant bien sûr avec les autres et beaucoup plus
précisément la partie qui est encadrée en noir.
2. Les arbres de classification :
Un arbre de décision est un schéma représentant les résultats
possibles d'une série de choix interconnectés. Il permet à une
personne ou une organisation d'évaluer différentes actions possibles
en fonction de leur coût, leur probabilité et leurs bénéfices
Un arbre de décision commence généralement par un nœud d'où
découlent plusieurs résultats possibles. Chacun de ces résultats mène
à d'autres nœuds, d'où émanent d'autres possibilités. Le schéma ainsi
obtenu rappelle la forme d'un arbre.
• La classification statistique est utilisée pour :
o Attribuer automatiquement des documents à des catégories
o Classer les organismes en groupes
o Élaborer des profils d’étudiants qui suivent des cours en ligne
Exemple :
Page | 24
MINIPROJETBIGDATA
3. L’analyse de régression :
La définition :
L’analyse de régression est une méthode statistique de modélisation
des relations entre différentes variables (dépendantes et
indépendantes). Elle est utilisée pour décrire et analyser les relations
entre les données. L'analyse de régression permet de réaliser des
prédictions, les relations entre les données étant utilisées comme une
base pour la prévision et la conception d'un modèle de prédiction.
Une régression est basée sur l’idée qu’une variable dépendante est
déterminée par une ou plusieurs variables indépendantes.
Les analyses de régression ont deux objectifs centraux. Elles sont
censées :
• Quantifier les relations et les décrire à l’aide des valeurs
mesurées et de leur représentation graphique.
• Fournir des prévisions et des prédictions.
Les Types d'analyses de régression :
•Régression simple : Seulement une variable explicative est utilisée
pour expliquer la variable dépendante.
•Régression multiple : Plusieurs variables explicatives sont liées à
une variable dépendante.
•Régression linéaire : Il existe une relation linéaire entre plusieurs
variables explicatives et plusieurs variables dépendantes. Le concept
comprend également des paramètres linéaires et une structure.
•Régression non-linéaire :S’il n’existe pas de relation linéaire entre
les variables dépendantes et indépendantes, vous obtenez une
régression non-linéaire.
Page | 25
MINIPROJETBIGDATA
Ia régression linéaire simple
La régression linéaire consiste à expliquer une variable par une
variable explicative tout en faisant l’hypothèse que la fonction reliant
ces deux variables est une fonction affine.
La méthode de moindres carrés
Une des techniques les plus connues pour trouver la fonction reliant
une variable expliquée à une variable explicative est la technique des
moindres carrés. On peut remarquer que cette technique n’est pas
réservée à la régression linéaire.
On peut voir ici un exemple de l’utilisation de la méthode des
moindres carrés aboutissant à la formation d’une courbe.
Application des moindres carrés à la droite de régression linéaire :
On dispose de deux ensembles de valeurs d’une taille n : les variable
explicatives {x1,x2,x3…xn} et les variables expliquées {y1,y2,y3…yn}
entachées ou non d’erreurs de mesures. On connaît un ensemble de
points (xi,yi) grâce auquel on va pouvoir appliquer la méthode des
moindres carrés.
L’ensemble des points (xi,yi) forment alors un nuage tel que celui
présenté à la sous partie régression linéaire. On cherche alors la
droite d’une fonction affine s’adaptant le mieux à ce nuage de points.
Pour cela on cherche la fonction F(x) = ax+b tel que E, somme des
Page | 26
MINIPROJETBIGDATA
carrés des différences entre f(xi) et la valeur yi correspondante, soit
le plus petit possible.
On utilise alors la formule :
Où ei est la différence entre f(x) et y.
Soit a’ et b’ paramètres réduisant E à son minimum, alors il a été
prouvé que
Et que
X étant la moyenne des abscisses des points et Y la moyenne des
ordonnées des points.
Exemple d’utilisation :
On peut voir dans le tableau la masse et la taille de 10 personnes
fictives dont l’imc est « normal ».
Ces données sont alors mises dans un graphique avec la taille en
abscisse
Page | 27
MINIPROJETBIGDATA
En supposant que la fonction qui fait le lien entre la taille et la masse
de la personne est une fonction affine, on peut alors créer une droite
de régression linéaire à l’aide de la technique des moindres carrés
vue plus haut.
Il faut en premier lieu calculer la moyenne de la taille et la moyenne
de la masse tel que :
La taille moyenne est de 185.8 cm
La masse moyenne est de 77.3 kg.
On peut alors calculer la fonction f(x) optimale.
Le coefficient de la droite de régression est
Page | 28
MINIPROJETBIGDATA
L’ordonnée à l’origine de la droite est
Ce qui nous donne la droite de régression linéaire ci-dessous.
Les outils en R :
VirtualBox :
Oracle VM VirtualBox (anciennement
VirtualBox) est un logiciel libre de
virtualisation publié par Oracle.
VirtualBox permet la création d’un ou
de plusieurs ordinateurs virtuels dans
lesquels s’installent d’autres systèmes
d’exploitation.
Il fonctionne sous Windows mais
aussi sur Mac, Linux …
La virtualisation permet, sur un même
PC, de faire tourner plusieurs
systèmes d’exploitation en
concurrence. Le système d’exploitation « principal » fait tourner par
le biais d’une application servant au partage des ressources et à
l’émulation d’un PC un autre système d’exploitation.
Page | 29
MINIPROJETBIGDATA
✓ Hadoop
Créé par Apache, Hadoop est un framework logiciel open
source facilitant le traitement distribué de très larges ensembles de
données au travers de centaines de serveurs opérant parallèlement.
Ce framework repose sur des modèles de programmation
simples pour assurer le traitement des données et les rendre
disponibles sur des machines locales.
✓ Storm
Storm est un autre produit développé par Apache. Il s’agit d’un
système de traitement Big Data en temps réel open source. Storm
est adapté à tous les langages de programmation, et permet de
traiter des données même si un nœud connecté du cluster ne
fonctionne plus ou si les messages sont perdus.
✓ Hadoop MapReduce
Page | 30
MINIPROJETBIGDATA
Hadoop MapReduce est un modèle de programmation et un
framework logicielpermettant de créer des applications de
traitement de données. Développé à l’origine par
Google, MapReduce autorise le traitement rapide et parallèle de
larges ensembles de données sur des clusters de nœuds.
Ce framework a deux fonctions principales. D’abord, la fonction de
mapping permettant de séparer les données à traiter.
Deuxièmement, la fonction de réduction permettant d’analyser les
données.
✓ Cassandra
Apache Cassandra est une base de données NoSQL hautement
scalable. Elle est capable de surveiller de larges ensembles de
données répartis sur divers clusters de serveurs et sur le Cloud.
Initialement développée par Facebook pour répondre à un besoin
d’une base de données suffisamment puissante pour la fonction de
recherche Inbox.
Les fonctions rx-XXXXXX ou Rx-XXXXXX :
Tout d’abord ces fonctions sont incluses dans la bibliothèque
RevoScaleR
Page | 31
MINIPROJETBIGDATA
La bibliothèque RevoScaleR R :
La bibliothèque RevoScaleR est un ensemble de fonctions R
portables, évolutives et distribuables permettant d'importer, de
transformer et d'analyser des données à grande échelle. Vous pouvez
l'utiliser pour les statistiques descriptives, les modèles linéaires
généralisés, les arbres de classification et de régression et les forêts
de décision.
Les fonctions s'exécutent sur l'interpréteur RevoScaleR, construit sur
un open-source R, conçu pour tirer parti de l'architecture
multithread et multi-nœud de la plate-forme hôte.
Comment installer cette bibliothèque :
Il existe en fait plusieurs méthodes pour installer cette bibliothèque,
on a utilisé la suivante :
✓ Installation de R-Client de Microsoft :
Il faut respecter les deux étapes essentielles :
1- Installation de R Client :
C’est une installation très simple.
2- Configuration de notre IDE :
Bien que R soit un programme piloté par ligne de commande, vous
pouvez également utiliser votre environnement de développement
intégré (IDE) favori pour interagir avec Microsoft R Client. Les
options de R IDE incluent les outils R pour Visual Studio sous
Windows (recommandé), RStudio ou tout autre environnement de
développement R.
On a utilisé RStudio.
Les fonctions de cette bibliothèque :
• rx-Summary()
Produire des résumés univariés des objets dans RevoScaleR.
• Rx-LinMod()
Ajuster les modèles linéaires sur des petites ou grandes.
Page | 32
MINIPROJETBIGDATA
Données Exemple d’application :
On a utilisé comme un titre d’exemple de Airline on-time
performance data on 2008 in USA.3
On a utilisé les variables suivantes :
Year
L’année du vol.
Month
Le mois du vol.
DayOfMonth
Le jour du mois de vol.
DayOfWeek
Le jour de la semaine .
DepTime
Heure de depart reelle .
CRSDepTime
heure de départ prévue.
ArrTime
Heure d'arrivée réelle.
CRSArrTime
heure d'arrivée prévue.
UniqueCarrier
La compagnie de transport.
FlightNum
numéro de vol.
TailNum
3
Cette Data-Base est donnée par
Page | 33
MINIPROJETBIGDATA
plane's tail number (stored as factor).
ActualElapsedTime
Durée réelle du vol, en minutes
CRSElapsedTime
scheduled elapsed time of the flight, in minutes (stored as
integer).
AirTime
airborne time for the flight, in minutes (stored as integer).
ArrDelay
L’arrive en retard en minute
DepDelay
Le départ en retard en minute
Origin
Aéroport de départ
Dest
L’aeroport de d’arrivée
Distance
Distance de vol
TaxiIn
taxi time from wheels down to arrival at the gate, in minutes
TaxiOut
taxi time from departure from the gate to wheels up, in minutes
Cancelled
cancellation status
CancellationCode
cancellation code, if applicable
Page | 34
MINIPROJETBIGDATA
Diverted
diversion status
CarrierDelay
delay, in minutes, attributable to the carrier
WeatherDelay
delay, in minutes, attributable to weather factors
NASDelay
delay, in minutes, attributable to the National Aviation System
SecurityDelay
delay, in minutes, attributable to security factors
LateAircraftDelay
delay, in minutes, attributable to late-arriving aircraft
On applique la fonction rxsummary pour ArrDellay, on
trouve donc :
Avant tout ca , on doit tout d’abord importer notre fichier de l’annee
2008 selon la forma suivante
Chargement
de données
Temps de l’exécution
de l’opération
Le nombre des
fichiers existe
Page | 35
MINIPROJETBIGDATA
La moyenne de retard vaut 8.16 min, l’écart type vaut 38.50 4
La valeur minimum indique qu’il existe des vols qui sont partis avant
le temps de départ (519 min avant le temps réel du départ)
On observe aussi que les valeurs observées sont : 6 855 029 et les
valeurs que l’analyse n’arrive pas à les détectés sont :154 699.
On affiche maintenant les informations générales sur l’arrive en
retard et le temps prévue de départ du vol.
Application de la fonction rxHistogram :
4
On a attendu presque 3 minutes pour avoir les résultats :
La moyenne
L’écart type
Les valeurs observées
Le temps de
compilation
Les valeurs
mesurées
Page | 36
MINIPROJETBIGDATA
Il affiche les résultats suivants :
On a trouvé le graphe suivant :
Les chiffres de 1 à 7 correspondant aux lundi, mardi , …,
Dimanche respectivement
On applique la fonction de rxlinmod pour avoir le modelé
linéaire et ces coefficients et on a attendu 7 minutes pour
avoir les résultats :
Page | 37
MINIPROJETBIGDATA
Ce calcul est compilé en 4.415 seconds
L’affichage du temps d’exécution en utilisant la fonction rxLinMod() :
Donc le temps au cours de l’utilisation est de 1.96s.
Page | 38
MINIPROJETBIGDATA
− Comparaison avec Biglm :
Chargement de la bibliotheque :
On applique la même fonction system.time pour voir le temps
d’exécution
On trouve pour cette partie la chose suivante :
C’est 64.73 s c.-à-d. une augmentation de : 3202.5 fois d’où
l’importance d’application de package RevoScaleR.
Page | 39
MINIPROJETBIGDATA
Partie 2: La cartographie
I. Cartographies, Cartes:
1. Qu’est-ce que la cartographie :
La cartographie a pour but la représentation de la Terre ou d’une autre
planète sous une forme géométrique et graphique grâce à la conception, la
préparation et la réalisation de cartes. La cartographie est à la fois une
science, un art et une technique.
• C’est une science, car ses bases sont mathématiques, notamment en ce
qui concerne la détermination de la forme et des dimensions de la Terre
puis le report de la surface courbe de la Terre sur un plan (la carte) grâce
au système des projections et enfin l’établissement d’un canevas
planimétrique et altimétrique. L’enjeu est la précision et la fiabilité de la
carte.
• C’est un art, car en tant que mode d’expression graphique, la carte
doit présenter des qualités de forme (esthétique et didactique
grâce à la clarté du trait, à son expressivité et sa lisibilité) afin
d’exploiter au mieux les capacités visuelles du lecteur. Cela exige de
la part du concepteur et du réalisateur des choix dans la
représentation.
• C’est enfin une technique, car elle nécessite d’amont en aval,
l’emploi d’instruments dont les progrès ont bouleversé toute la
filière cartographique (photographies aériennes, satellites,
ordinateurs, impression et diffusion, etc.).
L’enjeu est de considérer la cartographie comme art d’expression et comme un
outil d’analyse, d’aide à la décision et de communication.
Les méthodes de la cartographie, c’est-à-dire la démarche et la réflexion
intellectuelle que supposent l’acte de concevoir, réaliser puis lire des cartes
Page | 40
MINIPROJETBIGDATA
La notion de carte n’est pas à confondre avec celle de plan* qui représente un espace
restreint. On parle de plans de maison, de quartier voire de ville mais jamais de plan de
France ou d’une région.
thématiques nécessitent d’autres compétences. Lire une carte thématique est en
soit un acte complexe qui ne répond à aucune recette prédéterminée.
L’expérience du lecteur dans un domaine quelconque et sa capacité à décrypter
la trame de l’organisation de l’espace géographique sont les deux facteurs-clefs
de la lecture efficace d’une carte. Il est cependant plus aisé de cerner les acquis
que réclament la conception puis la réalisation d’une carte thématique puisqu’ils
découlent plus ou moins directement d’une logique dans le choix du langage
cartographique. Pour résumer, le respect d’une série de règles et de méthodes
est garant d’une cartographie thématique efficace et fiable.
2. Carte :
Objet très ancien, plus ou moins complexe, aux multiples facettes et
utilisations, onne peut donner une seule définition de la carte. Toutes les
cartes ont néanmoins un point commun, celui de représenter une portion
de l’espace terrestre. Retenons deux définitions de la carte :
• Selon F. Joly, « une carte est une représentation géométrique, plane,
simplifiée et conventionnelle de tout ou partie de la surface
terrestre et cela dans un rapport de similitude convenable qu’on
appelle échelle ».
• La carte est un dessin réduit et à plat du Monde ou d’une portion du
Monde. Elle peut être aussi et d’autre part une représentation sur
un fond de carte géographique, d’un phénomène quelconque
concret ou abstrait. Cette représentation est faite sur papier ou sur
un autre support tel le verre, le bois ou un écran d’ordinateur. Une
carte est conçue à la main ou par une machine. Les distances sur la
carte sont toujours dans le même rapport que sur le terrain.
Page | 41
MINIPROJETBIGDATA
De ces définitions se dégagent cinq grands principes dont les conséquences
pratiques guident ou devraient guider le travail de tout cartographe,
professionnel ou non.
• La carte est une représentation, un dessin : la carte est donc un document
visuel. Ceci explique que la conception et la réalisation d’une carte
doivent respecter des règles simples mais rigoureuses, issues des lois de
la perception visuelle.
• La carte est une représentation plane : la carte matérialise le passage de
la sphère terrestre à un plan. Ce passage est réalisé grâce au procédé des
projections. L’obligation de la projection implique qu’aucune carte n’est
fidèle à la forme réelle de la surface terrestre. De plus, selon la projection
retenue, le visage du territoire projeté sera très différent. Cette contrainte
n’est impérieuse que dans le cadre d’une cartographie de grandes
étendues de terrain (travail à petite échelle).
• La carte est une représentation réduite : une carte n’a pas pour objectif
de représenter l’espace en vraie grandeur. Au contraire, le but est
d’obtenir document maniable sur lequel est représenté le terrain selon
un rapport de réduction : l’échelle.
• La carte est une représentation simplifiée : la réduction impose une série
d’opérations graphiques que l’on regroupe sous le nom générique de
généralisation et qui visent à choisir les objets à représenter et à
remplacer leurs formes observées sur le terrain par des figurés
conventionnels.
• La carte est une représentation conventionnelle : le cartographe utilise
un langage, le langage cartographique, qui possède sa propre grammaire.
Sa connaissance permet de transmettre au mieux une information
géographique.
De même que la définition de la cartographie a laissé entrevoir les deux grandes
branches de cette discipline, celle de la carte différencie deux grands types de
cartes : d’une part les cartes de base (appelées également cartes générales ou
Page | 42
MINIPROJETBIGDATA
encore cartes classiques) issues de la cartographie mathématique et d’autre part
les cartes spéciales.
Dès le 17ème siècle, l’homme a cartographié la Terre dans un but moins restrictif
que celui de représenter la topographie des pays et de décrire la Terre. Les
cartes sont devenues des instruments de connaissance, de décision, de prévision
et de planification au service des Etats. Sont donc apparues des cartes spéciales
ou cartes spécialisées aujourd’hui communément appelées cartes thématiques.
3. Cartographie sous R : théorie et pratique :
Dans de nombreuses situations, il peut être utile de représenter graphiquement
des disparités géographiques, par le biais d’une carte. Même si R n’est pas un
outil cartographique dédié (comme peut l’être ArcGIS ou QGIS), de
nombreux packages existent pour permettre de manipuler des données spatiales
et pour fabriquer des cartes.
L’utilisation de R peut s’avérer judicieuse quand il s’agit d’introduire la
production de carte dans un workflow d’analyse reposant déjà sur R. On évite
ainsi de multiples importations/exportations des données avec leur lot de
problèmes et erreurs, et on profite de la flexibilité du langage R et ses packages.
Ce document a pour but :
• D’introduire les principales notions théoriques en termes de
cartographie
• De montrer en pratique comment réaliser une carte à l’aide des
principaux packages (dont rgdal, sp)
3.1 Cartographie sous R : théorie
Pour réaliser une carte, on a généralement recours à plusieurs ingrédients :
• Un fond de carte sur lequel nous allons ajouter nos propres données.
• Un ensemble de données géolocalisées, qui peuvent s’appliquer soit à
un point, soit à une zone, qui devront être jointes à notre fond de carte.
Page | 43
MINIPROJETBIGDATA
• Un système de coordonnées cartographique et une projection qui
déterminent la façon dont les données géographiques sont représentés.
3.1.1 Le fond de carte
Un fond de carte permet de représenter graphiquement les caractéristiques
d’une région géographique d’intérêt. Le fond de carte permet de “planter le
décor” et d’apporter les éléments contextuels utiles. C’est sur ce fond de carte
que vont venir se greffer nos données géolocalisées.
Il existe une quantité infinie de fond de carte différent, qui peuvent
grossièrement être rangés dans deux catégories :
• Les représentations vectorielles (ou vector layer). Dans ce cas, les
caractéristiques de la région d’intérêt sont représentées sous la forme
d’un ensemble de formes (ou features) comme des points ou des tracés
(lignes, polygones…). Ce format est particulièrement adapté à la
représentation de zones géographiques bien délimitées, telles que les
limites administratives (pays, régions, départements, communes), les
limites géologiques, l’emplacement de villes, etc…
• Les représentations matricielles (ou raster layer). Dans ce cas, les
caractéristiques de la région d’intérêt sont stockées sous la forme d’une
image (ensemble de pixel rangé en lignes/colonnes, d’où le nom). A
chaque pixel est associé une valeur, permettant de décrire les
Page | 44
MINIPROJETBIGDATA
caractéristiques. Par exemple, l’altitude peut être représentée sous la
forme de pixels allant du vert au rouge, les plans d’eau peuvent être
représentés par des pixels de couleur bleu, etc…
Bien évidemment, il est possible de combiner plusieurs représentations pour
créer un fond de carte plus complexe.
3.1.2 Données géolocalisées
De nos jours, les données géolocalisées ne sont pas ce qui manque. Les données
géolocalisées peuvent être rattachées à une zone particulière (ex : à une région
ou un département français), ou bien être rattachées à un point (ex :
coordonnées GPS votre domicile).
En fonction du type de données (zone/point), l’exploitation qui peut en être faite
va varier. Avec des données de zone, il est possible de créer des cartes à bases
d’aplat de couleurs, ou carte choroplèthe. Avec des données de points, on
utilisera plutôt des représentations ponctuelles (ex : un point de taille variable,
en fonction de la valeur) ou des représentations de densité/intensité (carte de
chaleur, ou heatmap).
Pour les données de zone, on a généralement des données au format suivant :
• Une colonne pour l’identifiant de la zone concernée
• Une ou plusieurs colonnes contenant les valeurs des variables
d’intérêt (ex : population/m², nombre d’hospitalisations…)
L’enjeux sera alors généralement de fusionner sous R ces informations de zones
à un objet décrivant ces zones (lui-même issu d’un fichier SHP le plus souvent).
Par exemple, rattacher les informations sur le nombre d’hospitalisation par
départements à un objet spatial contenant les contours des départements… A
noter que dans ce cas-là, les problèmes de coordonnées/projection ne se posent
qu’à la création de l’objet spatial, pas à l’import des données.
Pour les données ponctuelles, on a généralement les données au format suivant :
Page | 45
MINIPROJETBIGDATA
• Une colonne longitude
• Une colonne latitude
• Une ou plusieurs colonnes contenant les valeurs des variables d’intérêt
Dans cette situation, il est impératif de connaître le système de
coordonnées utilisé pour le calcul des coordonnées géographiques, sans quoi la
représentation sera fausse. Le plus souvent, c’est le système WGS84 qui sera
utilisé (si on parle de GPS quelque part ou que ce n’est pas précisé, c’est le
WGS84…). Si on souhaite fusionner ces données à un objet spatial (raster ou
vectoriel), il faudra s’assurer que les systèmes de coordonnées et la projection
est la même.
L’enjeu sera ici de créer un objet spatial à partir des coordonnées
longitude/latitude, puis d’ajouter/fusionner les données d’intérêt.
3.1.3 Système de coordonnées et projection
cartographique
Imaginons qu’on souhaite expliquer à quelqu’un où se situe précisément Paris
sur la Terre. Il y a une quantité infinie de façon de le faire, en fonction du
référentiel utilisé. Prenons par exemple comme point d’origine Rio de Janeiro, au
Brésil. Dans ce cas-là, on peut situer Paris en précisant que la ville est à X km vers
l’Est, et à Y km vers le Nord. A partir du point d’origine (Rio de Janeiro) et
des coordonnées (X, Y), vous avez la position de Paris. Cette position sous-entend
que la position de Rio de Janeiro est déjà connue, et qu’il est admis que les
coordonnées sont données en Est puis Nord, en kilomètres.
Mais, si cela peut sembler suffisant de première abord, il existe un grand nombre
de paramètres qui ne sont pas pris en compte ici : la dérive des continents (la
distance Rio/Paris change constamment), la déformation de la Terre (qui n’est
pas une sphère parfaite), l’altitude…
Page | 46
MINIPROJETBIGDATA
En pratique, pour positionner des éléments sur le globe, on a recours aux
coordonnées à base de
latitude/longitude.
Ces coordonnées vont dépendre de plusieurs éléments, les principaux étant :
• L’ellipsoïde de référence, c’est-à-dire la forme de la sphère qui va
représenter la Terre. Comme dit juste au-dessus, la terre n’est pas une
sphère parfaite : elle présente des irrégularités plus ou moins
importantes selon les endroits (en gros, c’est une patatoïde !). Pour les
calculs, on utilise des approximations, des formes simplifiées qui
s’approche de la forme de la Terre : des ellipsoïdes de révolution.
En fonction des utilisations et de la représentation voulue, le choix de
l’ellipsoïde doit être adapté. Par exemple, pour une représentation globale
de la Terre, on choisira l’ellipsoïde globalement le plus proche de la forme
générale de la Terre. A l’inverse, pour une représentation d’une zone
particulière (ex : la France) on peut utiliser un ellipsoïde plus proche de la
forme de la Terre à cette zone, pour des raisons de précisions.
Parmi les ellipsoïdes fréquemment utilisés, on peut citer le WGS84 (celui
utilisé dans le système du même nom) ou l’IAG-GRS80 (celui utilisé dans
le système Lambert-93). A noter que, malgré quelques différences
subtiles, ces deux ellipsoïdes sont quasi-identiques.
Page | 47
MINIPROJETBIGDATA
• Un point d’origine. Selon les cas, l’origine sera déterminée soit par la
position du centre de l’ellipsoïde, soit par un point de référence à la
surface de la terre.
On regroupe l’ensemble de ces éléments sous le terme de système de
coordonnées géographique (coordinate reference system ou CRS pour nos amis
anglais) ou de datum. Il en existe une très grande quantité.
Pour faire de la cartographie, un paramètre supplémentaire est nécessaire. En
effet, une carte est une représentation plane du globe terrestre, il faut donc
appliquer une projection aux coordonnées pour pouvoir les afficher dans un
plan. Là aussi, de multiples possibilités s’offre à nous : projection cylindrique,
projection conique… avec des propriétés distinctes. Le choix de la projection va
fortement influencer le rendu sur la carte (ex : taille et forme des pays).
L’ensemble datum + projection est désigné par le terme système de référence
spatiale (spatial reference system ou SRS). Ils sont référencés sous la forme
d’un code EPSG à 4 chiffres, pour simplifier leur utilisation.
3.2 Cartographie sous R : pratique
Nous allons utiliser les packages « sp » et « rgdal » pour importer un fond de
carte au format SHP reprenant le tracé des communes de France. Nous
travaillerons ensuite sur l’Ile-de-France : des données extérieures sur le temps
de parcours pour hospitalisation seront jointes à notre object spatial, et une
carte basée sur ces données sera produite.
Les packages « RColorBrewer » et « classInt » seront utilisés pour sélectionner
des groupes de couleurs adaptées, et pour catégoriser simplement des variables,
respectivement.
Le rendu des cartes se fera par l’intermédiaire du package base, partie intégrante
de la distribution standard de R. D’autres packages,
comme « ggplot2 », « rCarto », « maptools » ou « ggmap » (un dérivé
de « ggplot2 ») peuvent être utilisés. Des exemples utilisant ces packages seront
ajoutés à l’avenir.
Page | 48
MINIPROJETBIGDATA
Première chose à faire : installer et charger les packages nécessaires
# Importation des librairies nécessaires
3.2.1 Chargement des données spatiales
Il existe plusieurs façons de charger des données spatiales dans R, faisant intervenir
différents packages. Ici, nous utiliserons uniquement les fonctions de chargement
issus du packages « rgdal ». Ce package est une interface entre R et la “Geospatial
Abstraction Library” (GDAL), une bibliothèque de fonctions dédiées aux
manipulations de données spatiales très largement utilisée.)
La fonction « ogrInfo » permet de scanner les données que l’on veut manipuler, de
façon à vérifier qu’elles seront bien lues et reconnues par la suite. Cette
fonction « ogrInfo » (tout comme « readOGR », qu’on va voir plus loin) prend 2
arguments indispensables :
• le chemin pointant vers le fichier SHP et ses données associées. Si vos
données sont dans le répertoire courant de travail sous R, il est quand même
nécessaire de remplir cet argument, avec “.” (le point . désignant sous R le
répertoire de travail courant)
• le nom du layer, c’est-à-dire le nom du fichier .SHP (sans mettre l’extension
au bout). Il est communément admis que l’ensemble des fichiers relatifs au
fichier SHP portent le même nom, seule l’extension change. Ex :
COMMUNE.SHP est accompagné de COMMUNE.PROJ, de
Page | 49
MINIPROJETBIGDATA
COMMUNE.DBF, etc. Ainsi, avec une commande, R va charger le SHP,
reconnaitre la projection et charger les données associées…
On commence par déterminer l’emplacement de notre fichier SHP, et on scan son
contenu :
# Emplacement de l'archive décompressée, à remplacer par le notre
# Description des données via orgInfo
Ici, on voit que les données sont correctement reconnues (driver adapté au format
ESRI Shapefile, le SRS est reconnu, les données associées sont bien présentés). A
noter que pour accéder directement aux données de coordonnées/projection (pour
Page | 50
MINIPROJETBIGDATA
vérifier ou modifier ces informations), il est plus simple d’utiliser directement la
fonction « proj4string() ».
Les données étant OK, on peut importer le fichier SHP et ses données associées via la
fonction « readOGR() », afin de créer un objet nommé ici comm. On regarde ensuite
la structure de l’objet crée par « rgdal » .
# Importation via la fonction readOGR de rgdal
# Description de la structure globale
Les objets créés via « readOGR » ont des structures particulières. Ils sont divisés en
plusieurs sous-objets, ou slots, préfixé par le symbole @. Chaque sous-objet possède
sa propre structure, et ses propres informations. Pour y accéder, la commande suit le
même motif que pour accéder à une variable dans un dataframe, mais via le
symbole @ au lieu du symbole $.
Page | 51
MINIPROJETBIGDATA
Les informations de géométries, relatives au fichier .SHP, sont stockées dans les
slots « @polygons », « @plotOrder » et « @bbox ». Les données associées, issues du
fichier .DBF, sont dans le slot « @data ». Enfin, les données de projection, issues du
fichier .PROJ, sont dans un slot à part, « @proj4string ». Pour plus d’informations,
vous pouvez regarder la documentation accompagnant cette classe particulière avec la
commande « class?SpatialPolygons ».
Jetons par curiosité un oeil au slot « @data » :
# Description de la structure des données associées
On voit ici le nom des variables importées, et leur format (numérique, caractère…).
De même pour le slot « @polygons » :
# Description de la structure des données vectorielles
head(comm@polygons, n=1)
Nos données associées, comme le code INSEE de la commune, son nom, son statut
administratif, sa superficie, sa population, etc… sont correctement importées dans
notre slot « @data ».
On peut dès à présent fabriquer une carte très simple représentant les contours des
communes, à partir des données spatiales extriates. A titre d’exemple, on va utiliser
ici la nouvelle méthode de « plot », spécifique à la classe « SpatialPolygons » et
ajouté par le package sp. Concrètement, cet ajout permet d’utiliser la fonction
classique « plot » pour représenter graphiquement des objets spatiaux.
Page | 52
MINIPROJETBIGDATA
# On représente les contours des communes de France avec la fonction
plot
plot(comm)
Il y
vraiment beaucoup de communes en France ! Du coup, une telle carte est
difficilement lisible et particulièrement longue à créer..Et si on se limitait à l’Ile-de-
France pour nos tests ?
Pour représenter uniquement les communes d’Ile-de-France (astuce : c’est la région
numéro 11), il suffit d’appliquer une sélection “classique” à l’objet « comm » grâce
aux variables à notre disposition, comme on pourrait le faire avec un dataframe.
# On plot les communes contenues dans l'Ile-de-France (CODE_REG
égal à 11)
Page | 53
MINIPROJETBIGDATA
plot(comm[comm$CODE_REG=="11",],)
On obtient donc bien la carte des contours des communes d’Ile-de-France.
Supposons maintenant qu’on veut faire ressortir de cette carte les communes dont la
population est de moins de 10 000 habitants. On peut chaîner les critères de
sélections, comme on le fait habituellement via & ou | :
Page | 54
MINIPROJETBIGDATA
# Communes d'IDF avec moins de 10 000 habitants
Notre carte ressemble à du gruyère ! C’est normal, puisque R n’a représenté que les
communes remplissant nos critères. Les autres communes n’ont donc pas été traitées
et sont absentes de la carte…
3.2.2 Utiliser des données externes dans notre carte
Nous avons vu comment créer une carte très simple à partir de données spatiales et
des données associées. Les données associées sont généralement très limitées, et ne
contiennent pas le plus souvent les informations qui nous intéressent réellement. Il est
donc nécessaire de marier nos données spatiales avec des données externes.
Pour cet exemple, on a choisi un jeu de données décrivant la distance parcourue par
un patient pour se rendre sur son lieu d’hospitalisation. Cette distance est calculée ici
en terme temps moyen de trajet (en minutes) pour accéder en voiture au lieu
d’hospitalisation. Comme d’habitude, le fichier est au format XLS et comporte des
mentions (titre, précision, etc.…) rendant son utilisation directe impossible. Pour
gagner du temps, vous trouverez ici une version utilisable de la table de données.
Commençons par importer nos données :
# Emplacement des données
Page | 55
MINIPROJETBIGDATA
# Import des données en respectant le format "Character" des codes
communes
tempsTrajet <- read.csv2(file = pathToData, stringsAsFactor = FALSE, colClasses =
c("character", "integer"))
# Verification import
Nous avons donc d’un coté notre objet « comm » comprenant nos données spatiales et
les données associées, et d’un autre côté notre objet « tempsTrajet » comprenant nos
données externes. L’idée est de rajouter nos données externes aux données associées
déjà présentes dans notre slot « @data ». De cette façon, on conserve les informations
de base (le nom des communes, leur numéro de département, etc…) tout en ajoutant
les informations pertinentes pour nos analyses (les temps de trajet).
Plusieurs façons de réaliser cet ajout sont possibles. De façon générale, il faut faire
attention à ne pas bousculer l’ordre des données du slot « @data » car ces données
sont jointes ligne-à-ligne avec les données spatiale. On peut utiliser la
fonction « match () », la classique fonction « merge() », voir la
fonction « left_join() » issue du package « dplyr » (les habitués du SQL seront en
terrain familier).
Pour la beauté de l’exemple, la fonction « match() » est utilisée ici. On constitue un
nouveau dataframe, composé d’une part des données originales, et d’autre part des
données de temps de trajet, rangées dans le même ordre que les données originales,
grâce à « match() ». Les variables clefs permettant d’identifier uniquement chaque
commune n’étant pas les mêmes dans les deux jeux de données, elles sont précisées
manuellement.
# On remplace le slot @data par un nouveau tableau de données,
contenant les anciennes données + les nouvelles
Page | 56
MINIPROJETBIGDATA
On a bien fusionné nos informations, mais on remarque au passage que nous avons
récupéré toutes les colonnes de « tempsTrajet », y compris la
variable « commune » qui fait doublon, mais passons.
En étant plus pragmatique, nous aurions pu faire un simple :
# Chargement de dplyr
Page | 57
MINIPROJETBIGDATA
# On remplace le slot @data par un nouveau tableau de données,
contenant les anciennes données + les nouvelles
Imaginons maintenant qu’on souhaite produire la carte des temps de trajet, pour la
région Ile-De-France. Nous allons réduire notre jeu de données pour ne garder que la
région Ile-De-France. Nous allons aussi utiliser « classInt » pour discrétiser notre
temps de trajet, et « RColorBrewer » pour choisir des couleurs adaptées à notre
nouvelle variable discrète.
# Filtrage des données pour ne garder que la région Ile-De-France
# Vérification
# Découpage du temps de trajet en 5 classes via la méthodes des
quantiles : idenfication des bornes (breaks, ou brks)
classTemps <- classIntervals(idf@data$temps, 5, style = "quantile")
# Choix d'une palette de couleur pour les 5 catégories
# Application de ce découpage à variable temps, sauvegarde dans
temps_cat
Page | 58
MINIPROJETBIGDATA
# On stocke, pour chaque observation, la valeur de la couleur
correspondante
# On stocke l'information des classes pour créer une légende
# Vérification
Il ne reste plus qu’à faire notre carte :
# Avec le package base
Page | 59
MINIPROJETBIGDATA
CONCLUSION
L'explosion quantitative des données statistiques a obligé les
chercheurs à trouver de nouvelles manières de voir et d'analyser
le monde. Il s'agit de découvrir de nouveaux ordres de grandeur
concernant la capture, la recherche, le partage, le stockage,
l'analyse et la présentation des données comme le Big Data.
Page | 60
MINIPROJETBIGDATA
Partie 3 : ACP (Analyse en
Composantes Principales) :
Généralité :
n individus observés sur p variables quantitatives.
L’A.C.P. permet d’explorer les liaisons entre variables et les
ressemblances entre individus.
Résultat : (ce qu’il faut obtenir après application de ACP)
➢ Visualisation des individus (Notion de distances entre
individus)
➢ Visualisation des variables (en fonction de leurs corrélations)
INTERPRÉTATION DES RÉSULTATS DETAILS :
1-Mesurer la qualité des représentations obtenues :
-critère global.
-critères individuels.
2- « Donner des noms aux axes » :
-Expliquer la position des individus
3- Utilisation éventuelle de variables supplémentaires
Position du Problème:
1-LES DONNÉES
p variables quantitatives observées sur n individus.
On cherche à représenter le nuage des individus.
A chaque individu noté ei, on peut associer un point dans
Rp = espace des individus.
A chaque variable du tableau X est associé un axe de Rp.
Page | 61
MINIPROJETBIGDATA
Alors impossible à visualiser dès que p > 3 !!!!!!!!
Principe de la méthode ACP :
Page | 62
MINIPROJETBIGDATA
« Perdre le moins d’information possible»
sont basées sur les notions de :
- Distance
- projection orthogonale
Page | 63
MINIPROJETBIGDATA
3. LE CHOIX DE LA DISTANCE ENTRE INDIVIDUS :
Pour résoudre ce problème, on choisit de transformer les données en
Page | 64
MINIPROJETBIGDATA
données centrées-réduites.
L’observation est alors remplacée par :
UNITÉS D’ÉCART TYPE:
Exemple :
Puissance moyenne de 30 voitures = 92 ch Ecart-type = 24 ch
La Renault 21 TXI a une puissance de 140 ch
La Renault 21 TXI a une puissance de :
2 écarts-type au-dessus de la moyenne.
4. INERTIE TOTALE :
L’inertie mesure la dispersion totale du nuage de points.
L’inertie est donc aussi égale à la somme des variances des variables
étudiées.
Page | 65
MINIPROJETBIGDATA
En notant V la matrice de variances-covariances :
Remarque :
Dans le cas où les variables sont centrées réduites, la variance de
chaque variable vaut 1. L’inertie totale est alors égale à p (nombre de
variables).
Équivalence des deux critères concernant la perte d’information.
Page | 66
MINIPROJETBIGDATA
LA SOLUTION DU PROBLÈME POSÉ :
La recherche d’axes portant le maximum d’inertie équivaut à la
construction de nouvelles variables (auxquelles sont associés ces
axes) de variance maximale.
En d’autres termes, on effectue un changement de repère dans Rp de
façon à se placer dans un nouveau système de représentation où le
premier axe apporte le plus possible de l’inertie totale du nuage, le
deuxième axe le plus possible de l’inertie non prise en compte par le
premier axe, et ainsi de suite. Cette réorganisation s’appuie sur la
diagonalisation de la matrice de variances-covariances.
SOLUTION :
Axes principaux :
On appelle axes principaux d’inertie les axes de direction les
vecteurs propres de V normés à 1.
Il y en a p.
Le premier axe est celui associé à la plus grande valeur propre.
On le note u1
Page | 67
MINIPROJETBIGDATA
Le deuxième axe est celui associé à la deuxième valeur propre. On le
note u2
Composantes principales :
À chaque axe est associée une variable appelée composante
principale.
La composante c1 est le vecteur renfermant les cordonnées des
projections des individus sur l’axe 1.
La composante c2 est le vecteur renfermant les cordonnées des
projections des individus sur l’axe 2.
Pour obtenir ces coordonnées, on écrit que chaque composante
principale est une combinaison linéaire des variables initiales.
Exemple :
2. PROPRIÉTÉS DES COMPOSANTES PRINCIPALES :
1-La variance d’une composante principale est égale à l’inertie
portée par l’axe principal qui lui est associé.
1ère composante c1 variance : λ1
2ème composante c2 variance : λ2
3ème composante c3 variance : λ3
2- Les composantes principales sont non corrélées deux à deux.
En effet, les axes associés sont orthogonaux.
3. REPRÉSENTATION DES INDIVIDUS :
La jème composante principale fournit les
coordonnées des n individus sur le jème axe
principal.
Page | 68
MINIPROJETBIGDATA
Si on désire une représentation plane des individus, la meilleure
sera celle réalisée grâce aux deux premières composantes
principales.
4. REPRÉSENTATION DES VARIABLES
Les « proximités » entre les composantes principales et les variables
initiales sont mesurées par les covariances, et surtout les
corrélations.
r (cj ,xi ) est le coefficient de corrélation linéaire entre c j et xi
Page | 69
MINIPROJETBIGDATA
5. INTERPRETATION DES « PROXIMITÉS » ENTRE
VARIABLES
On utilise un produit scalaire entre variables permettant d’associer
aux paramètres courants : écart-type, coefficient de corrélation
linéaire des représentations géométriques.
On suppose les variables centrées.
Page | 70
MINIPROJETBIGDATA
III. VALIDITÉ DES REPRÉSENTATIONS :
1. CRITÈRE GLOBAL :
Mesure la part d’inertie expliquée par
l’axe i.
Exemple :
Est la part d’inertie expliquée par le premier plan
principal.
Ce critère (souvent exprimé en pourcentage) mesure le degré
dereconstitution des carrés des distances.
La réduction de dimension est d’autant plus forte que les
variables de départ sont plus corrélées.
Combien d’axes ?
Page | 71
MINIPROJETBIGDATA
Différentes procédures sont complémentaires :
1-Pourcentage d’inertie souhaité : a priori
2-Diviser l’inertie totale par le nombre de variables initiales
➔ Inertie moyenne par variable : I.M.
Conserver tous les axes apportant une inertie supérieure à cette
valeur I.M.
(Inertie > 1 si variables centrées réduites).
2. CRITÈRES INDIVIDUELS :
Pour chaque individu, la qualité de sa représentation est définie par
le carré du cosinus de l’angle entre l’axe de projection et le vecteur .
Page | 72
MINIPROJETBIGDATA
Plus la valeur est proche de 1, meilleure est la qualité de
représentation
En général, les qualités de représentation sont données axe par axe.
Pour avoir la qualité de représentation dans un plan, on additionne
les critères correspondant aux axes étudiés.
Ce critère n’a pas de signification pour les individus proches de
l’origine.
Quand on détecte un individu pour lequel le cosinus carré est faible,
on doit tenir compte de sa distance à l’origine avant d’indiquer qu’il
est mal représenté
Contributions :
Il est très utile aussi de calculer pour chaque axe la contribution
apportée par les divers individus à cet axe.
Considérons la kième composante principale Ck, soit Cik la valeur de
la composante pour le ième individu.
Remarque :
✓ Il n’est pas souhaitable qu’un individu ait une contribution
excessive (car facteur d’instabilité) ➔ éliminer les individus
dont la contribution est trop importante.
✓ Problème des enquêtes par sondage
3. REPRÉSENTATION DES VARIABLES :
Page | 73
MINIPROJETBIGDATA
4. INTERPRÉTATION EXTERNE : VARIABLES ET INDIVIDUS
SUPPLÉMENTAIRES (ILLUSTRATIFS) :
4.1 Variables
•Variable quantitative :
On calcule le coefficient de corrélation entre la variable
supplémentaire et les composantes principales.
Ceci permet sa représentation sur le cercle des corrélations.
Page | 74
MINIPROJETBIGDATA
4. Etude de cas sous « Logiciel XLSTAT »
XLSTAT est un logiciel d’analyse de données
convivial qui s’intègre a Excel
Historique : c’est un logiciel en pleine croissance
Page | 75
MINIPROJETBIGDATA
XLSTAT en quelques chiffres
Statistiques : 4 catégories
Page | 76
MINIPROJETBIGDATA
Tableau de données : plateforme de vente de
chaussures en ligne
Nuage de points coloré par groupe :
Page | 77
MINIPROJETBIGDATA
Commentaires :
-Montant facture diminue avec temps passé sur le site
-Clients plutoniens passent moins de temps sur le site
que les autres
Remarque :
Imaginez le même raisonnement sur un nombre plus
élevé de variables…
Dans ce cas, on veut raisonner de la même manière
qu’avec le nuage de points (2D), mais en utilisant un
tableau a plus de 2 colonnes (dimensions)
Page | 78
MINIPROJETBIGDATA
On veut pouvoir résumer un jeu de données à
plusieurs colonnes sur quelques graphiques simples.
On pourra examiner :
-Les relations entre variables
-La proximité des individus entre eux
-La caractérisation des individus par les variables
ACP : Concept
ACP : paramétrage sur XLSTAT
Page | 79
MINIPROJETBIGDATA
ACP : A quoi ça ressemble, en réalité ?
ACP : Interprétation des axes
Page | 80
MINIPROJETBIGDATA
ACP : explorations …
Page | 81
MINIPROJETBIGDATA
Focus sur la notion de groupes ‘homogènes
d’individus détectés’ :
Conclusion :
Au cours de la réalisation de notre projet, on a eu l’occasion
d’améliorer nos connaissances acquises durant notre
formation et aussi d’approcher un petit peu la notion de Big
Data qui est très importante.
Finalement, On souhaite que ce modeste travail
trouve une bonne appréciation et sera un manuel
d’information pour toutes les étudiantes et tous les
étudiants
Page | 82
MINIPROJETBIGDATA
Annexe :
Le processus d’installation de RHadoop sur Machine virtuelle
Cloudera sur VirtualBox :
A. Téléchargement et installation de VirtualBox :
• On télécharge le logiciel à partir de son site officiel
https://www.virtualbox.org/
• On choisit la version convenable avec notre système
d’exploitation (Windows, OS, Linux, etc..)
Page | 83
MINIPROJETBIGDATA
• Apres l’installation, on doit avoir trouver une page d’accueil
comme celle-ci :
B. Téléchargement et installation de Cloudera sur
VirtualBox :
• On ouvre le lien suivant
https://www.cloudera.com/downloads/quickstart_vms/5-
13.html et on choisit le platform convenable (Virtual Box) :
Page | 84
MINIPROJETBIGDATA
• Après avoir remplir un formulaire, vous pouviez télécharger
votre Cloudera QuickStarts 5.13 (c’est presque 6GO)
• On revient à la page d’accueil de VirtualBox et on clique sur
importer
• On choisit le fichier virtuel (Cloudera QuickStarts 5.13)5
5
Ce fichier doit être extrait en deux fichiers.
1
2
Page | 85
MINIPROJETBIGDATA
• En cliquant sur Suivant, après on clique sur Importer et on le
laisse installer et configurer notre Cloudera 6
• Avant de démarrer notre Cloudera, on doit vérifier qu’on a les
configurations suivantes :
• En cliquant sur notre machine virtuelle, on clique sur
Configuration et on fixe les configurations suivantes :
7
6
C’est environ 3 ou 4 minutes.
7 Si vous ne trouvez pas la version 64-bit, il faut modifier la VIRTUALIZATION en Enabled dans
votre Windows BIOS.
Vous pouviez consulter la vidéo suivante pour bien comprendre
https://www.youtube.com/watch?v=-Wa7TGjmn5M.
Il est obligatoirement
demandé qu’on installe la
version (64-bit)
1
2
Page | 86
MINIPROJETBIGDATA
• On clique sur Système et on fait les configurations
suivantes :
o Pour la RAM.
Pour la RAM, on choisit le plus grand possible sans toucher les
configurations de Système d’Exploitation réel
o Pour le Processeur.
La même chose ici, on choisit le plus grand possible.
• Maintenant, on démarre notre Cloudera en cliquant sur
démarrer
Page | 87
MINIPROJETBIGDATA
Le premier démarrage prend en général entre 4 et 5 minutes.8
C. L’installation de R, RStudio et les packages nécessaires :
Après avoir démarrer votre Cloudera, Voici l’image que vous allez
trouver :
8
Ces intervalles du temps se peuvent être changé selon la RAM , Le PROCESSEUR de votre Ordinateur.
Page | 88
MINIPROJETBIGDATA
• L’installation de R et de RStudio est simple, il suffit
d’ouvrir un Terminal et écrire les lignes suivantes :
#Installation de R
$ sudo yum install R
il doit vous donner de télécharger des packages nécessaires, vous
répondriez oui (c’est ‘y’ qui signifie Yes)
Pour vérifier que R est bien installer, on écrit $sudo R , vous allez
trouver :
Terminal
Pour accéder au
moteur de recherche
Page | 89
MINIPROJETBIGDATA
✓ L’installation de packages nécessaires :
• En démarrant R en mode administrateur via le terminal :
$sudo R.
• On installe les packages nécessaires pour programmer dans
Hadoop :
install.packages(c("RJSONIO","Rcpp", "bitops", "caTools",
"digest","functional", "stringr", "plyr", "reshape2","rJava"))9
− Installation des packages spécifiques sous R :
Tout d’abord, on doit télécharger les fichiers de packages
rhdfs et rmr2 :
− On ouvre le lien suivant et on télécharge les deux fichiers
suivants :
− https://github.com/RevolutionAnalytics/RHadoop/wi
ki/Downloads
−
9
Si vous avez trouvé des difficultés au cours de l’installation de ces packages, vous pouviez utiliser la
fonction install.packages() toute seule et sans paramètres et choisissez les packages nécessaires avec
la source convenable ( US California ça marche très bien )
Page | 90
MINIPROJETBIGDATA
$ cd Downloads/
$ ls - l
Il affiche les fichiers :
On ouvre R en mode administrateur :
2
1
Page | 91
MINIPROJETBIGDATA
• Il faut d’abord spécifier les valeurs des variables
d’environnement -indiquant la localisation du système hadoop
sur notre machine - avant de pouvoir l’installer. Nous utilisons
la Commande Sys.setenv() sous R.
• d’où les deux packages sont bien installer
• On ouvre un nouveau terminal et on télécharge RStudio en
respectant les étapes suivantes :
− On ouvre le lien suivant :
https://www.rstudio.com/products/rstudio/download-server/
Page | 92
MINIPROJETBIGDATA
On choisit RedHat/CentOS
− On choisit la version 64-bit :
Pour le télécharger, on ouvre un terminal et on écrit :
$ wget https://download2.rstudio.org/rstudio-server-rhel-1.1.463-
x86_64.rpm
Pour l’installer, on écrit :
$ sudo yum install rstudio-server-rhel-1.1.463-x86_64.rpm
− RStudio s’ouvre comme un server, pour savoir le server,
on ouvre le terminal et on écrit :
$ifconfig
Par exemple, vous allez trouver :
Page | 93
MINIPROJETBIGDATA
Donc , on écrit
http://127.0.0.1:8787/auth-sign-in :
On trouve alors :
cloudera
cloudera
Page | 94
MINIPROJETBIGDATA
− Vous allez trouver la chose suivante :
D. L’installation de package RevoScaleR pour utiliser les
fonctions : rx-Summary, rx-LinMod,etc…
Il faut savoir que La bibliothèque RevoScaleR est un ensemble de
fonctions R portables, évolutives et distribuables permettant
d'importer, de transformer et d'analyser des données à grande
échelle.
Parmi les packages de distribution de ce package, on trouve R Client
de Microsoft
Pour l’installer, il faut respecter les étapes suivantes :
1. L’installation de R Client Microsoft
− Fermez RStudio s'il est déjà ouvert.
− Démarrez une session de terminal et connectez-vous en tant
que root (sudo su).
− Ecrire le code suivant : rpm -Uvh
https://packages.microsoft.com/config/rhel/6/packages-
microsoft-prod.rpm
− ls -la /etc/yum.repos.d/ #cette ligne est pour bien vérifier les
configurations de l’enregistrement .
Page | 95
MINIPROJETBIGDATA
− yum install microsoft-r-client-packages-3.4.3 #c’est pour
installer R client packages .
2. La configuration de RStudio pour RevoScaleR :
− Fermez RStudio s'il est déjà ouvert.
− Démarrez une session de terminal et connectez-vous en tant
que root (sudo su).
− Ecrire le code suivant : gedit
/opt/microsoft/rclient/3.4.3/runtime/R/etc/Renviron
− Ca va ouvrir un fichier, on cherche le fichier : R_LIBS_USER
− On ajoute au-dessous de cette ligne la ligne suivante :
R_LIBS_SITE=/opt/microsoft/rclient/3.4.3/libraries/RServe
r
− On clique sur Save et on ouvre notre Rstudio :
Donc notre bibliothèque est bien fonctionnée.
E. L’installation de la bibliothèque « biglm » :
− Il suffit tout simplement de connecter le R comme un
administrateur (c a d sudo R .)
− Ecrire : install.packages(‘‘biglm’’) :
Page | 96
MINIPROJETBIGDATA
Généralement, c’est une installation rapide et simple mais, on trouve
un cas très fréquent c’est lorsqu’il indique que le fichier lquadmath
n’existe pas !!!
La solution tout simplement, est d’ouvrir un terminal et écrire les
choses suivantes :
1. Entrer selon le mode root selon la chose suivante :
− $ Sudo su
2. On cherche le chemin du fichier libquadmath :
− ldconfig -p | grep libquad*
− Il doit afficher les résultats suivants :
Donc, Le problème semble être que libquadmath.so.0 est
enterré dans le
| | /usr/ lib64/libquadmath.so.0 où le compilateur ne peut
apparemment pas le voir.
3. La solution est très simple, il suffit de respecter les étapes
suivantes :
− $cd /usr/lib64. # accéder au chemin suivant
− sudo ln -s
/usr/lib64/libquadmath.so.0/usr/lib64/libquadmath.so # on
permet le compilateur de voir le fichier .
Fin

Contenu connexe

Tendances

Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiquejihene Ab
 
Conception d'un convoyeur à bande
Conception d'un convoyeur à bandeConception d'un convoyeur à bande
Conception d'un convoyeur à bandemedrouam
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSFaissoilMkavavo
 
dimensionnement et conception d'un convoyeur à bande
dimensionnement et conception d'un convoyeur à bandedimensionnement et conception d'un convoyeur à bande
dimensionnement et conception d'un convoyeur à bandeHasni Zied
 
Conception d’un balanced scorecard
Conception d’un balanced scorecard Conception d’un balanced scorecard
Conception d’un balanced scorecard Hassan Elalami
 
Pfe version final(scripte matlab de simulation des panneau pv)
Pfe version final(scripte matlab de simulation des panneau pv)Pfe version final(scripte matlab de simulation des panneau pv)
Pfe version final(scripte matlab de simulation des panneau pv)mustaphamoufassih
 
Structure d'un Rapport stage pfe master.pdf
Structure d'un Rapport stage pfe master.pdfStructure d'un Rapport stage pfe master.pdf
Structure d'un Rapport stage pfe master.pdfNoureddineIDBOUFKER
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique ayoub daoudi
 
Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5YounessLaaouane
 
Risques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireRisques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireSouhila Benkaci
 
Rapport stage onee-be_2
Rapport stage onee-be_2Rapport stage onee-be_2
Rapport stage onee-be_2Mounir Kaali
 
Rapport de stage de perfectionnement
Rapport de stage de perfectionnementRapport de stage de perfectionnement
Rapport de stage de perfectionnementbadouuur
 
Projet mahfoudh 20 06 2013
Projet mahfoudh 20 06 2013Projet mahfoudh 20 06 2013
Projet mahfoudh 20 06 2013MAHFOUDH CHEBIL
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile Raoua Bennasr
 
Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Anouar Kacem
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseAbderrahmane Filali
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"étudesMohamed Boubaya
 
Mémoire charafa olahanmi Licence Professionnelle en Hydraulique
Mémoire charafa olahanmi Licence Professionnelle en HydrauliqueMémoire charafa olahanmi Licence Professionnelle en Hydraulique
Mémoire charafa olahanmi Licence Professionnelle en HydrauliqueCharafa Olahanmi
 
Etude de rentabilité des travaux d'exploitation en carrière
Etude de rentabilité des travaux d'exploitation en carrièreEtude de rentabilité des travaux d'exploitation en carrière
Etude de rentabilité des travaux d'exploitation en carrièreLaila Berchane
 

Tendances (20)

Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatique
 
Conception d'un convoyeur à bande
Conception d'un convoyeur à bandeConception d'un convoyeur à bande
Conception d'un convoyeur à bande
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTS
 
dimensionnement et conception d'un convoyeur à bande
dimensionnement et conception d'un convoyeur à bandedimensionnement et conception d'un convoyeur à bande
dimensionnement et conception d'un convoyeur à bande
 
Conception d’un balanced scorecard
Conception d’un balanced scorecard Conception d’un balanced scorecard
Conception d’un balanced scorecard
 
Pfe version final(scripte matlab de simulation des panneau pv)
Pfe version final(scripte matlab de simulation des panneau pv)Pfe version final(scripte matlab de simulation des panneau pv)
Pfe version final(scripte matlab de simulation des panneau pv)
 
Structure d'un Rapport stage pfe master.pdf
Structure d'un Rapport stage pfe master.pdfStructure d'un Rapport stage pfe master.pdf
Structure d'un Rapport stage pfe master.pdf
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique
 
Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5Rapport de stage Application web Gestion RH ASP.NET MVC5
Rapport de stage Application web Gestion RH ASP.NET MVC5
 
Risques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoireRisques hydrologiques et aménagement du territoire
Risques hydrologiques et aménagement du territoire
 
Rapport stage onee-be_2
Rapport stage onee-be_2Rapport stage onee-be_2
Rapport stage onee-be_2
 
Rapport de stage de perfectionnement
Rapport de stage de perfectionnementRapport de stage de perfectionnement
Rapport de stage de perfectionnement
 
Projet mahfoudh 20 06 2013
Projet mahfoudh 20 06 2013Projet mahfoudh 20 06 2013
Projet mahfoudh 20 06 2013
 
Rapport de stage du fin d'étude
Rapport de stage du fin d'étudeRapport de stage du fin d'étude
Rapport de stage du fin d'étude
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
 
Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015Rapport de stage de fin d'études ISI 2015
Rapport de stage de fin d'études ISI 2015
 
Conception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data WarehouseConception et Réalisation d'un Data Warehouse
Conception et Réalisation d'un Data Warehouse
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 
Mémoire charafa olahanmi Licence Professionnelle en Hydraulique
Mémoire charafa olahanmi Licence Professionnelle en HydrauliqueMémoire charafa olahanmi Licence Professionnelle en Hydraulique
Mémoire charafa olahanmi Licence Professionnelle en Hydraulique
 
Etude de rentabilité des travaux d'exploitation en carrière
Etude de rentabilité des travaux d'exploitation en carrièreEtude de rentabilité des travaux d'exploitation en carrière
Etude de rentabilité des travaux d'exploitation en carrière
 

Similaire à Généralités sur le BIG DATA et la procédure d'installation de RHadoop sur

Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Mohamed Aziz Chetoui
 
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdfMrShady1
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...Mohamed Amine Mahmoudi
 
Le livre blanc des systemes embarques
Le livre blanc des systemes embarquesLe livre blanc des systemes embarques
Le livre blanc des systemes embarquesHichem Bensenouci
 
Déploiement de la solution Libre de cloud computing : Nextcloud
Déploiement de la solution Libre de  cloud computing : NextcloudDéploiement de la solution Libre de  cloud computing : Nextcloud
Déploiement de la solution Libre de cloud computing : Nextcloudbamaemmanuel
 
RAPPORT NATIONAL SUR L’EMPLOI 2016
RAPPORT NATIONAL SUR L’EMPLOI 2016RAPPORT NATIONAL SUR L’EMPLOI 2016
RAPPORT NATIONAL SUR L’EMPLOI 2016Jamaity
 
Barometre des Pratiques de Veille 2008
Barometre des Pratiques de Veille 2008Barometre des Pratiques de Veille 2008
Barometre des Pratiques de Veille 2008Digimind
 
Cours processus- production
Cours processus- productionCours processus- production
Cours processus- productionAmine Chahed
 
gestion de notariat avec openerp
gestion de notariat avec openerpgestion de notariat avec openerp
gestion de notariat avec openerpHORIYASOFT
 
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)CLES-FACIL
 
27 certification des_comptes_rapport_tome1
27 certification des_comptes_rapport_tome127 certification des_comptes_rapport_tome1
27 certification des_comptes_rapport_tome1mohamcool
 
Dossier de clôture : Fusex Padmée 2010
Dossier de clôture : Fusex Padmée 2010Dossier de clôture : Fusex Padmée 2010
Dossier de clôture : Fusex Padmée 2010CLES-FACIL
 
Livre blanc de J2ME
Livre blanc de J2MELivre blanc de J2ME
Livre blanc de J2MEBruno Delb
 
rapport-analyser-la-fracture-numrique-2023 (3).pdf
rapport-analyser-la-fracture-numrique-2023 (3).pdfrapport-analyser-la-fracture-numrique-2023 (3).pdf
rapport-analyser-la-fracture-numrique-2023 (3).pdfPaperjam_redaction
 
E3. Améliorer l'accessibilité au quotidien
E3. Améliorer l'accessibilité au quotidienE3. Améliorer l'accessibilité au quotidien
E3. Améliorer l'accessibilité au quotidienCap'Com
 

Similaire à Généralités sur le BIG DATA et la procédure d'installation de RHadoop sur (20)

Rapport pfev7
Rapport pfev7Rapport pfev7
Rapport pfev7
 
Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...
 
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
546005863-Mon-Rapport-Stage-Technicien-Version-Final.pdf
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
 
Technocles2010 1
Technocles2010 1Technocles2010 1
Technocles2010 1
 
Le livre blanc des systemes embarques
Le livre blanc des systemes embarquesLe livre blanc des systemes embarques
Le livre blanc des systemes embarques
 
Déploiement de la solution Libre de cloud computing : Nextcloud
Déploiement de la solution Libre de  cloud computing : NextcloudDéploiement de la solution Libre de  cloud computing : Nextcloud
Déploiement de la solution Libre de cloud computing : Nextcloud
 
RAPPORT NATIONAL SUR L’EMPLOI 2016
RAPPORT NATIONAL SUR L’EMPLOI 2016RAPPORT NATIONAL SUR L’EMPLOI 2016
RAPPORT NATIONAL SUR L’EMPLOI 2016
 
Barometre des Pratiques de Veille 2008
Barometre des Pratiques de Veille 2008Barometre des Pratiques de Veille 2008
Barometre des Pratiques de Veille 2008
 
Cours processus- production
Cours processus- productionCours processus- production
Cours processus- production
 
gestion de notariat avec openerp
gestion de notariat avec openerpgestion de notariat avec openerp
gestion de notariat avec openerp
 
Rapport frequences ecoles
Rapport frequences ecolesRapport frequences ecoles
Rapport frequences ecoles
 
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)
Fusex: 2009-2010 SAT'LAUNCH (CLES-FACIL, INSA de LYON)
 
27 certification des_comptes_rapport_tome1
27 certification des_comptes_rapport_tome127 certification des_comptes_rapport_tome1
27 certification des_comptes_rapport_tome1
 
Dossier de clôture : Fusex Padmée 2010
Dossier de clôture : Fusex Padmée 2010Dossier de clôture : Fusex Padmée 2010
Dossier de clôture : Fusex Padmée 2010
 
Livre blanc de J2ME
Livre blanc de J2MELivre blanc de J2ME
Livre blanc de J2ME
 
rapport-analyser-la-fracture-numrique-2023 (3).pdf
rapport-analyser-la-fracture-numrique-2023 (3).pdfrapport-analyser-la-fracture-numrique-2023 (3).pdf
rapport-analyser-la-fracture-numrique-2023 (3).pdf
 
Technocles2010 2
Technocles2010 2Technocles2010 2
Technocles2010 2
 
Rapport stage pact13
Rapport stage pact13Rapport stage pact13
Rapport stage pact13
 
E3. Améliorer l'accessibilité au quotidien
E3. Améliorer l'accessibilité au quotidienE3. Améliorer l'accessibilité au quotidien
E3. Améliorer l'accessibilité au quotidien
 

Dernier

GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...Institut de l'Elevage - Idele
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Ville de Châteauguay
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...Institut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfSophie569778
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirstjob4
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de planchermansouriahlam
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...Institut de l'Elevage - Idele
 

Dernier (20)

GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
GAL2024 - Consommations et productions d'énergies dans les exploitations lait...
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
Présentation_Soirée-Information_ Surverse_Thibert _30 avril 2024
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
GAL2024 - Méthane 2030 : une démarche collective française à destination de t...
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
JTC 2024 Bâtiment et Photovoltaïque.pdf
JTC 2024  Bâtiment et Photovoltaïque.pdfJTC 2024  Bâtiment et Photovoltaïque.pdf
JTC 2024 Bâtiment et Photovoltaïque.pdf
 
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdfWBS OBS RACI_2020-etunhjjlllllll pdf.pdf
WBS OBS RACI_2020-etunhjjlllllll pdf.pdf
 
firefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdffirefly algoriyhm sac a dos step by step .pdf
firefly algoriyhm sac a dos step by step .pdf
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
conception d'un batiment r+4 comparative de defferente ariante de plancher
conception d'un  batiment  r+4 comparative de defferente ariante de plancherconception d'un  batiment  r+4 comparative de defferente ariante de plancher
conception d'un batiment r+4 comparative de defferente ariante de plancher
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
 

Généralités sur le BIG DATA et la procédure d'installation de RHadoop sur

  • 1. Université Abdelmalek Essaadi Faculté des Sciences et Techniques Tanger Département Mathématique 2éme Année cycle ingénieurs Génie industriel RAPPORT DE PROJET BIG DATA
  • 2. Page | 2 MINIPROJETBIGDATA Remerciement : Avant tout, nous devons remercier Dieu tout puissant qui nous a donné le courage et la force pour mener ce travail à terme. En premier lieu nous tenons à remercier vivement notre encadrant du module Monsieur Rachid EL HALIMI, Professeur et chercheur à la Faculté des Sciences et technique de Tanger, pour ses conseils avisés et pour la confiance qu’il nous a accordé tout au long de notre formation de ce module, nous avons grandement apprécié votre soutien, votre implication et votre expérience tout au long de ce semestre.
  • 3. Page | 3 MINIPROJETBIGDATA Sommaire Remerciement :.................................................................................................................... 1 Partie 1 : Le Big Data, introduction, techniques et outils. ............................................. 6 Comment le big data est-il apparu ?............................................................................... 6 Définition de big data : ..................................................................................................... 6 L’historique :....................................................................................................................... 7 Big data en chiffres :.......................................................................................................... 7 Les objectifs du big data :................................................................................................. 8 Les domaines d’applications de Big data :.................................................................... 8 • Les caractéristiques de Big Data :........................................................................... 9 • Les enjeux du Big Data :.......................................................................................... 11 Les problèmes de big data : ........................................................................................... 12 • Big Algebra :.......................................................................................................... 12 • Big Noise :.............................................................................................................. 12 • Big time :................................................................................................................ 13 • Big structures : ..................................................................................................... 13 • Sécurité :................................................................................................................ 13 1. L’automatisation de la discrimination : ...................................................... 13 2. Les abus gouvernementaux :......................................................................... 13 3. La vente aux enchères des données :........................................................... 13 Les techniques statistiques de Big Data :........................................................................ 14 1. Les règles d’association :........................................................................................ 14 Définition : .................................................................................................................... 15 Extraction des règles d’association :........................................................................ 15 Application sur RStudio : ........................................................................................... 17 2. Les arbres de classification :.................................................................................. 23 Exemple : ....................................................................................................................... 23 3. L’analyse de régression :........................................................................................ 24 La définition :................................................................................................................ 24 Les Types d'analyses de régression :....................................................................... 24 Ia régression linéaire simple..................................................................................... 25 Les outils en R :..................................................................................................................... 28 VirtualBox : ....................................................................................................................... 28 ✓ Hadoop....................................................................................................................... 29 ✓ Storm.......................................................................................................................... 29
  • 4. Page | 4 MINIPROJETBIGDATA ✓ Hadoop MapReduce ................................................................................................ 29 ✓ Cassandra.................................................................................................................. 30 Les fonction rx-XXXXXX ou Rx-XXXXXX : .................................................................... 30 La bibliothèque RevoScaleR R :..................................................................................... 31 Données Exemple d’application : ................................................................................. 32 Partie 2: La cartographie ........................................................................................................ 39 I. Cartographies, Cartes:................................................................................................. 39 1. Qu’est-ce que la cartographie : ................................................................................ 39 2. Carte :......................................................................................................................... 40 3. Cartographie sous R : théorie et pratique :......................................................... 42 3.1 Cartographie sous R : théorie........................................................................ 42 3.1.1 Le fond de carte........................................................................................ 43 3.1.2 Données géolocalisées............................................................................ 44 3.1.3 Système de coordonnées et projection cartographique.................. 45 3.2 Cartographie sous R : pratique ..................................................................... 47 CONCLUSION ................................................................................................................... 59 Partie 3 : ACP (Analyse en Composantes Principales) : ............................................... 60 Généralité :........................................................................................................................ 60 Position du Problème: .................................................................................................... 60 1-LES DONNÉES............................................................................................................. 60 Principe de la méthode ACP : ........................................................................................ 61 3. LE CHOIX DE LA DISTANCE ENTRE INDIVIDUS : .................................................... 63 4. INERTIE TOTALE :........................................................................................................ 64 LA SOLUTION DU PROBLÈME POSÉ :............................................................................ 66 2. PROPRIÉTÉS DES COMPOSANTES PRINCIPALES :................................................. 67 3. REPRÉSENTATION DES INDIVIDUS : ........................................................................ 67 4. REPRÉSENTATION DES VARIABLES......................................................................... 68 5. INTERPRETATION DES « PROXIMITÉS » ENTRE VARIABLES.............................. 69 III. VALIDITÉ DES REPRÉSENTATIONS : ...................................................................... 70 1. CRITÈRE GLOBAL :..................................................................................................... 70 2. CRITÈRES INDIVIDUELS :.......................................................................................... 71 3. REPRÉSENTATION DES VARIABLES :...................................................................... 72 4. INTERPRÉTATION EXTERNE : VARIABLES ET INDIVIDUS SUPPLÉMENTAIRES (ILLUSTRATIFS) : .......................................................................................................... 73 4. Etude de cas sous « Logiciel XLSTAT »................................................................... 74
  • 5. Page | 5 MINIPROJETBIGDATA Conclusion :........................................................................................................................... 81 Annexe : ................................................................................................................................. 82
  • 6. Page | 6 MINIPROJETBIGDATA Partie 1 : Le Big Data, introduction, techniques et outils. Comment le big data est-il apparu ? L’explosion quantitative des données numériques a obligé les chercheurs à trouver de nouvelles manières de voir et d’analyser le monde. Il s’agit de découvrir de nouveaux ordres de grandeur concernant la capture, la recherche, le partage, le stockage, l’analyse et la présentation des données. Ce sont les informations provenant de partout : messages que nous nous envoyons, vidéos que nous publions,informations climatiques,signauxGPS, enregistrements transactionnels d’achats en ligne et bien d’autres encore Le volume de données numériques ne cesse d’augmenter. Cette prolifération des données est due à la numérisation croissante de tous les domaines du web et de l’économie. C’est dans ce contexte que le big data est né, au moyen de la fusion de diverses sources de données, structurées ou non structurées, telles que : – L’utilisation d’internet sur les mobiles – Les réseaux sociaux – La géolocalisation – Le cloud – Le streaming des médias. Définition de big data : Littéralement, ces termes signifient mégadonnées, grosses données ou encore données massives. Ils désignent un ensemble très volumineux de données qu’aucun outil classique de gestion de base de données ou de gestion de l’information ne peut vraiment travailler. En effet, nous procréons environ 2,5 trillions d’octets de données tous les jours. Le Big data est appliqué dans tous les domaines ayant rapport au Web. Un exemple d’outil de big data dans le domaine de l’e- commerce est la fameuse phrase « ceux qui ont acheté le produit X ont aussi acheté… ».
  • 7. Page | 7 MINIPROJETBIGDATA L’historique : Ces données sont baptisées Big Data ou volumes massifs de données. Les géants du Web, au premier rang desquels Yahoo (mais aussi Facebook et Google), ont été les tous premiers à déployer ce type de technologie. Selon les archives de la bibliothèque numérique de l’Association for Computing Machinery (ou ACM) dans des articles scientifiques concernant les défis technologiques à relever pour visualiser les « grands ensembles de données », cette appellation est apparue en octobre 1997. Big data en chiffres : Les chiffres du Big Data permettent de comprendre à quel point la collecte et l’analyse de données sont en train de bouleverser toutes les industries On peut citer les chiffres du Big data suivants : • Le volume de données mondiales double tous les trois ans • Les prédictions pour le futur : • 75% des entreprises comptent implémenter l’IA et le Big Data • 60% des fabricants mondiaux utiliseront le Big Data • 90% des données mondiales ont été créées au
  • 8. Page | 8 MINIPROJETBIGDATA cours des deux dernières années • 1,7 mégabyte de données sera créé chaque seconde par chaque personne en 2020 Les objectifs du big data : Le Big Data est une technologie formidable permettant notamment aux entreprises de réduire leurs coûts, de prendre de meilleures décisions, ou encore de créer de nouveaux produits / services correspondant à la demande des clients. Toutefois, le Big Data n’en est encore qu’à ses balbutiements, et continue d’évoluer en permanence. Les domaines d’applications de Big data : Le big data est utilisé partout, dans tous les secteurs de la vie quotidienne et on trouve généralement : –La recherche médicale : grâce à l’évaluation des données massives, les médecins peuvent trouver de meilleures solutions de thérapie et de traitement pour leurs patients. – L’industrie : grâce à l’utilisation des données des machines de la chaîne de production par exemple, les entreprises peuvent augmenter l’efficacité de leur production et travailler de manière plus durable. – Economie : il permet aux entreprises de mieux connaitre leurs clients et de leur proposer des offres toujours plus adaptées à leurs besoins. – Marketing : le big data est utilisé dans le marketing pour mieux cibler les clients. L’objectif est entre autres d’améliorer les relations avec les consommateurs et d’augmenter le taux de conversion. – Lutte contre la criminalité : le gouvernement et les services de
  • 9. Page | 9 MINIPROJETBIGDATA sécurité ont également recours au big data, par exemple dans le cadre de la lutte antiterroriste ou de la lutte anti-blanchiment. – Secteur bancaire … • Les caractéristiques de Big Data : Parmi les utilisateurs les plus enthousiastes du Big Data, on retrouve les gestionnaires et les économistes. Ces derniers définissent ce phénomène par la règle des 5V(Volume, Velocity, Variety, Veracity, Value) 1. Le volume : Le volume correspond à la masse d’informations produite chaque seconde. Selon des études, pour avoir une idée de l’accroissement exponentiel de la masse de données, on considère que 90 % des données ont été engendrées durant les années où l’usage d’internet et des réseaux sociaux a connu une forte croissance. 2. La vélocité : La vélocité équivaut à la rapidité de l’élaboration et du déploiement des nouvelles données. Par exemple, si on diffuse des messages sur les réseaux sociaux, ils peuvent devenir « viraux » et se répandre en un rien de temps. Il s’agit d’analyser les données au décours de leur
  • 10. Page | 10 MINIPROJETBIGDATA lignée (appelé parfois analyse en mémoire) sans qu’il soit indispensable que ces informations soient entreposées dans une base de données. 3. La variété : Seulement 20% des données sont structurées puis stockées dans des tables de bases de données relationnelles similaire à celles utilisées en gestion comptabilisée. Les 80% qui restent sont non- structurées. Cela peut être des images, des vidéos, des textes, des voix, et bien d’autres encore… La technologie Big Data, permet de faire l’analyse, la comparaison, la reconnaissance, le classement des données de différents types comme des conversations ou messages sur les réseaux sociaux, des photos sur différents sites etc. Ce sont les différents éléments qui constituent la variété offerte par le Big Data. 4. La véracité : La véracité concerne la fiabilité et la crédibilité des informations collectées. Comme le Big Data permet de collecter un nombre indéfini et plusieurs formes de données, il est difficile de justifier l’authenticité des contenus, si l’on considère les post Twitter avec les abréviations, le langage familier, les hashtags, les coquilles etc. Toutefois, les génies de l’informatique sont en train de développer de nouvelles techniques qui devront permettre de faciliter la gestion de ce type de données notamment par le W3C. 5. La valeur : La notion de valeur correspond au profit qu’on puisse tirer de l’usage du Big Data. Ce sont généralement les entreprises qui commencent à obtenir des avantages incroyables de leurs Big Data. Selon les
  • 11. Page | 11 MINIPROJETBIGDATA gestionnaires et les économistes, les entreprises qui ne s’intéressent pas sérieusement au Big Data risquent d’être pénalisées et écartées. Puisque l’outil existe, ne pas s’en servir conduirait à perdre un privilège concurrentiel. • Les enjeux du Big Data : Le secteur (Big Data) novateur en lien avec les nouvelles technologies répond à des enjeux stratégiques en vue de développer des produits répondant aux besoins des consommateurs. 1. Développer les ventes : Avec des statistiques concrètes sous la main, les entreprises tirent désormais profit des informations à leur disposition pour proposer des produits ou services susceptibles d’intéresser les consommateurs. Elles peuvent ainsi espérer engranger un maximum de bénéfices tout en évitant les pertes liées aux coûts de développement de produits qui ne marchent pas. 2. Le Big Data au service du marketing : Les processus analytiques des données sont centralisés autour d’un référentiel connaissance client afin de réunir les applications métiers propres à chaque canal de communication. Il convient ensuite de mettre en place des solutions prédictives qui optimiseront les offres proposées aux clients, les campagnes de communication et par extension, les ventes. De fait, l’analyse des données centralisées permet à une entreprise de proposer à une clientèle bien définie les bons produits au bon moment en s’appuyant sur les bons messages.
  • 12. Page | 12 MINIPROJETBIGDATA 3. Le triage et l’analyse des données : Les professionnels du Big Data recourent non seulement à la statistique proprement dite, mais aussi au « machine learning » ou intelligence artificielle pour perfectionner l’analyse et l’exploitation des données. Actuellement, l’enjeu est tel que les entreprises ont tout intérêt à utiliser le Big Data pour faire face à la concurrence et doper leur croissance. Les problèmes de big data : Le big Data s’intéresse à éviter les choses suivantes : • Big Algebra : Lorsqu’il élabore une solution big data pour résoudre un problème donné, le « data scientist » ressemble beaucoup à un alchimiste. Préparation des données, choix et paramétrage de la méthode de traitement de données sont généralement des étapes difficiles. • Big Noise : Les spécialistes du « Data Mining » savent bien que l’accumulation de données ne suffit pas pour extraire des informations utiles. L’existence d’un signal de bruit ne permet pas toujours d’extraire les données voulues et on explique ça selon la figure suivante :
  • 13. Page | 13 MINIPROJETBIGDATA • Big time : La question du temps devient une dimension essentielle de la recherche en Big Data, Par ailleurs, l’intégration de la dimension temporelle est mal traitée dans le big data. • Big structures : Les problèmes de très grandes masses de données couvrent des types de données de nature et de structures bien plus variées : images, vidéos, larges corpus de livres • Sécurité : Le Big Data représente également un risque de sécurité pour la confidentialité et on trouve généralement les risques liés à la sécurité : 1. L’automatisation de la discrimination : Le Big Data tend à automatiser la discrimination. Malgré les avancées réalisées dans le domaine du Big Data, les lois sur la protection n’ont pas évolué. 2. Les abus gouvernementaux : Le nombre de bases de données gouvernementales américaines est plus élevé que jamais auparavant. Le FBI par exemple collecte des données personnelles comme le nom, les pseudonymes, l’origine ethnique, le genre, le lieu et la date de naissance, le numéro de sécurité sociale, le numéro de passeport, l’adresse, les numéros de téléphone, les photos, les empreintes digitales, les numéros de compte bancaire, et l’emploi des citoyens. 3. La vente aux enchères des données :
  • 14. Page | 14 MINIPROJETBIGDATA De nombreuses entreprises collectent et vendent les données des utilisateurs, permettant d’établir des profils d’individus. Les entreprises peuvent désormais savoir si une femme est enceinte, si une personne est homosexuelle ou si elle est atteinte d’un cancer avant même qu’elle ne le révèle à ses proches. Aucune loi ne protège réellement les consommateurs contre de tels agissements. Jusqu’à ce que des lois pour la protection de la confidentialité soient votées, ces pratiques continueront. Comme un titre d’exemple, l’utilisation de données personnelles pour la campagne de Trump. Les techniques statistiques de Big Data : Selon IDC Canada, une firme de recherche en informatique basée à Toronto, le Big Data est l’un des trois éléments les plus importants en 2013. Dans cette vision, il existe 7 techniques d’analyse du Big Data largement utilisées. Au cours des 12 prochains mois : 1- Les règles d’association 2- Les arbres de classification 3- Les algorithmes génétiques 4- La Machine Learning 5- L’analyse de régression 6- L’analyse de sentiments 7- L’analyse de réseaux sociaux 1. Les règles d’association :
  • 15. Page | 15 MINIPROJETBIGDATA Définition : Une règle d’association est dite « Bonne » S’elle est une règle avec un Support et une confiance élevée. Extraction des règles d’association : Soit un ensemble des produits organisées selon la chose suivante : Tout d’abord, il faut choisir LE SUPPORT MINIMUM, or à partir de ce schéma, on trouve la chose suivante :
  • 16. Page | 16 MINIPROJETBIGDATA 1 On trouve que C14=4, C24 =6, C34 =4 et C44 =1 On prend par exemple le Support minimum 2 L’item maximal est {P1, P2, P3} car il est le plus fréquent Pour les itemset, on teste toutes les combinaisons possibles, alors on a : Pour chaque {Pi,Pj} i≠j , sauf {P1,P4}, {P2, P4}, {P3, P4} car son support est inférieur au support minimal . On teste son support et sa confiance selon la chose suivante : Souvent, on trouve que malgré les paramètres « support et confiance » sont très élevés mais la méthode reste en général n’est pas intéressante. D’où, c’est pour cela il existe des autres paramètres ‘on dit des autres mesures’ avancés comme 1 Les chiffres colorés en bleu indiquent le support absolu.
  • 17. Page | 17 MINIPROJETBIGDATA * Lift = 1 -> La règle ne sert absolument à rien… Application sur RStudio : Prenons l’exemple des femmes (quelquefois il existe aussi des hommes qui utilisent ça !!) utilisent des produits cosmétiques. On a pris une population de 1000 individus utilisent la Liste des produits cosmétiques suivantes : Le nom du produit dans le fichier CSV.2 Bag Blush Nail Polish Brushes Concealer Eyebrow Pencils Bronzer Lip liner Mascara 2 Merci au Mr Bharatendra Rai. Director, Master of Science Technology Management Program; Chair, Dept. of Decision & Info Sciences at UMass Dartmouth , qui a m’envoyé cette base de données
  • 18. Page | 18 MINIPROJETBIGDATA Eye shadow Foundation Lip Gloss Lipstick Eyeliner On passe maintenant aux simulations, on ouvre le logiciel et on lit notre fichier selon le code suivant : On lit le fichier en cliquant sur le fichier dans la zone de DATA, on trouve alors : D’accourd , maintenant on va jouer avec ces données : 1- Premièrement on ouvre les bibliothèques ‘arules’ et ‘arulesViz’
  • 19. Page | 19 MINIPROJETBIGDATA 2- Pour bien visualiser les données, on applique la fonction Summary , on aura donc : Par exemple, on sait que 457 des individus utilisent l’Eyeliner, les autres n’utilisent pas (543). 3- Maintenant, on cherche à savoir les règles d’associations entre les différents items, on applique donc la fonction apriori :
  • 20. Page | 20 MINIPROJETBIGDATA On a construit 68880 règles, on doit tout simplement filtrer ces résultats en basant sur le support et la confiance et des autres paramètres comme : la longueur de la règle (le minimum et le maximum) : On a trouvé : On a trouvé 15 règles d’associations, on a les affichés en utilisant la fonction inspect et ça selon la chose suivante :
  • 21. Page | 21 MINIPROJETBIGDATA Ces règles ne sont pas intéressantes car pour chaque règle on observe qu’il s’agit d’une règle de « Si l’individu n’achète pas Bag Alors n’achète pas Brushes « ce qui en fait n’est pas intéressant : Donc il faut jouer sur le support et la confiance. En plus de ça, on prend que les individus qui utilisent ‘Foundation’. Pour un support de 0.01 et une confiance de 0.7, on trouve 19 règles On les affiche une autre fois en utilisant la même fonction :
  • 22. Page | 22 MINIPROJETBIGDATA Pour tracer les courbes, on applique la fonction plot() qui se trouve dans la bibliothèque ‘arulesViz’ On trouve :
  • 23. Page | 23 MINIPROJETBIGDATA On voit bien que la partie encadrée en bleu constitue une partie très importante car elle a un bon support, bonne confiance et un lift intéressant, en comparant bien sûr avec les autres et beaucoup plus précisément la partie qui est encadrée en noir. 2. Les arbres de classification : Un arbre de décision est un schéma représentant les résultats possibles d'une série de choix interconnectés. Il permet à une personne ou une organisation d'évaluer différentes actions possibles en fonction de leur coût, leur probabilité et leurs bénéfices Un arbre de décision commence généralement par un nœud d'où découlent plusieurs résultats possibles. Chacun de ces résultats mène à d'autres nœuds, d'où émanent d'autres possibilités. Le schéma ainsi obtenu rappelle la forme d'un arbre. • La classification statistique est utilisée pour : o Attribuer automatiquement des documents à des catégories o Classer les organismes en groupes o Élaborer des profils d’étudiants qui suivent des cours en ligne Exemple :
  • 24. Page | 24 MINIPROJETBIGDATA 3. L’analyse de régression : La définition : L’analyse de régression est une méthode statistique de modélisation des relations entre différentes variables (dépendantes et indépendantes). Elle est utilisée pour décrire et analyser les relations entre les données. L'analyse de régression permet de réaliser des prédictions, les relations entre les données étant utilisées comme une base pour la prévision et la conception d'un modèle de prédiction. Une régression est basée sur l’idée qu’une variable dépendante est déterminée par une ou plusieurs variables indépendantes. Les analyses de régression ont deux objectifs centraux. Elles sont censées : • Quantifier les relations et les décrire à l’aide des valeurs mesurées et de leur représentation graphique. • Fournir des prévisions et des prédictions. Les Types d'analyses de régression : •Régression simple : Seulement une variable explicative est utilisée pour expliquer la variable dépendante. •Régression multiple : Plusieurs variables explicatives sont liées à une variable dépendante. •Régression linéaire : Il existe une relation linéaire entre plusieurs variables explicatives et plusieurs variables dépendantes. Le concept comprend également des paramètres linéaires et une structure. •Régression non-linéaire :S’il n’existe pas de relation linéaire entre les variables dépendantes et indépendantes, vous obtenez une régression non-linéaire.
  • 25. Page | 25 MINIPROJETBIGDATA Ia régression linéaire simple La régression linéaire consiste à expliquer une variable par une variable explicative tout en faisant l’hypothèse que la fonction reliant ces deux variables est une fonction affine. La méthode de moindres carrés Une des techniques les plus connues pour trouver la fonction reliant une variable expliquée à une variable explicative est la technique des moindres carrés. On peut remarquer que cette technique n’est pas réservée à la régression linéaire. On peut voir ici un exemple de l’utilisation de la méthode des moindres carrés aboutissant à la formation d’une courbe. Application des moindres carrés à la droite de régression linéaire : On dispose de deux ensembles de valeurs d’une taille n : les variable explicatives {x1,x2,x3…xn} et les variables expliquées {y1,y2,y3…yn} entachées ou non d’erreurs de mesures. On connaît un ensemble de points (xi,yi) grâce auquel on va pouvoir appliquer la méthode des moindres carrés. L’ensemble des points (xi,yi) forment alors un nuage tel que celui présenté à la sous partie régression linéaire. On cherche alors la droite d’une fonction affine s’adaptant le mieux à ce nuage de points. Pour cela on cherche la fonction F(x) = ax+b tel que E, somme des
  • 26. Page | 26 MINIPROJETBIGDATA carrés des différences entre f(xi) et la valeur yi correspondante, soit le plus petit possible. On utilise alors la formule : Où ei est la différence entre f(x) et y. Soit a’ et b’ paramètres réduisant E à son minimum, alors il a été prouvé que Et que X étant la moyenne des abscisses des points et Y la moyenne des ordonnées des points. Exemple d’utilisation : On peut voir dans le tableau la masse et la taille de 10 personnes fictives dont l’imc est « normal ». Ces données sont alors mises dans un graphique avec la taille en abscisse
  • 27. Page | 27 MINIPROJETBIGDATA En supposant que la fonction qui fait le lien entre la taille et la masse de la personne est une fonction affine, on peut alors créer une droite de régression linéaire à l’aide de la technique des moindres carrés vue plus haut. Il faut en premier lieu calculer la moyenne de la taille et la moyenne de la masse tel que : La taille moyenne est de 185.8 cm La masse moyenne est de 77.3 kg. On peut alors calculer la fonction f(x) optimale. Le coefficient de la droite de régression est
  • 28. Page | 28 MINIPROJETBIGDATA L’ordonnée à l’origine de la droite est Ce qui nous donne la droite de régression linéaire ci-dessous. Les outils en R : VirtualBox : Oracle VM VirtualBox (anciennement VirtualBox) est un logiciel libre de virtualisation publié par Oracle. VirtualBox permet la création d’un ou de plusieurs ordinateurs virtuels dans lesquels s’installent d’autres systèmes d’exploitation. Il fonctionne sous Windows mais aussi sur Mac, Linux … La virtualisation permet, sur un même PC, de faire tourner plusieurs systèmes d’exploitation en concurrence. Le système d’exploitation « principal » fait tourner par le biais d’une application servant au partage des ressources et à l’émulation d’un PC un autre système d’exploitation.
  • 29. Page | 29 MINIPROJETBIGDATA ✓ Hadoop Créé par Apache, Hadoop est un framework logiciel open source facilitant le traitement distribué de très larges ensembles de données au travers de centaines de serveurs opérant parallèlement. Ce framework repose sur des modèles de programmation simples pour assurer le traitement des données et les rendre disponibles sur des machines locales. ✓ Storm Storm est un autre produit développé par Apache. Il s’agit d’un système de traitement Big Data en temps réel open source. Storm est adapté à tous les langages de programmation, et permet de traiter des données même si un nœud connecté du cluster ne fonctionne plus ou si les messages sont perdus. ✓ Hadoop MapReduce
  • 30. Page | 30 MINIPROJETBIGDATA Hadoop MapReduce est un modèle de programmation et un framework logicielpermettant de créer des applications de traitement de données. Développé à l’origine par Google, MapReduce autorise le traitement rapide et parallèle de larges ensembles de données sur des clusters de nœuds. Ce framework a deux fonctions principales. D’abord, la fonction de mapping permettant de séparer les données à traiter. Deuxièmement, la fonction de réduction permettant d’analyser les données. ✓ Cassandra Apache Cassandra est une base de données NoSQL hautement scalable. Elle est capable de surveiller de larges ensembles de données répartis sur divers clusters de serveurs et sur le Cloud. Initialement développée par Facebook pour répondre à un besoin d’une base de données suffisamment puissante pour la fonction de recherche Inbox. Les fonctions rx-XXXXXX ou Rx-XXXXXX : Tout d’abord ces fonctions sont incluses dans la bibliothèque RevoScaleR
  • 31. Page | 31 MINIPROJETBIGDATA La bibliothèque RevoScaleR R : La bibliothèque RevoScaleR est un ensemble de fonctions R portables, évolutives et distribuables permettant d'importer, de transformer et d'analyser des données à grande échelle. Vous pouvez l'utiliser pour les statistiques descriptives, les modèles linéaires généralisés, les arbres de classification et de régression et les forêts de décision. Les fonctions s'exécutent sur l'interpréteur RevoScaleR, construit sur un open-source R, conçu pour tirer parti de l'architecture multithread et multi-nœud de la plate-forme hôte. Comment installer cette bibliothèque : Il existe en fait plusieurs méthodes pour installer cette bibliothèque, on a utilisé la suivante : ✓ Installation de R-Client de Microsoft : Il faut respecter les deux étapes essentielles : 1- Installation de R Client : C’est une installation très simple. 2- Configuration de notre IDE : Bien que R soit un programme piloté par ligne de commande, vous pouvez également utiliser votre environnement de développement intégré (IDE) favori pour interagir avec Microsoft R Client. Les options de R IDE incluent les outils R pour Visual Studio sous Windows (recommandé), RStudio ou tout autre environnement de développement R. On a utilisé RStudio. Les fonctions de cette bibliothèque : • rx-Summary() Produire des résumés univariés des objets dans RevoScaleR. • Rx-LinMod() Ajuster les modèles linéaires sur des petites ou grandes.
  • 32. Page | 32 MINIPROJETBIGDATA Données Exemple d’application : On a utilisé comme un titre d’exemple de Airline on-time performance data on 2008 in USA.3 On a utilisé les variables suivantes : Year L’année du vol. Month Le mois du vol. DayOfMonth Le jour du mois de vol. DayOfWeek Le jour de la semaine . DepTime Heure de depart reelle . CRSDepTime heure de départ prévue. ArrTime Heure d'arrivée réelle. CRSArrTime heure d'arrivée prévue. UniqueCarrier La compagnie de transport. FlightNum numéro de vol. TailNum 3 Cette Data-Base est donnée par
  • 33. Page | 33 MINIPROJETBIGDATA plane's tail number (stored as factor). ActualElapsedTime Durée réelle du vol, en minutes CRSElapsedTime scheduled elapsed time of the flight, in minutes (stored as integer). AirTime airborne time for the flight, in minutes (stored as integer). ArrDelay L’arrive en retard en minute DepDelay Le départ en retard en minute Origin Aéroport de départ Dest L’aeroport de d’arrivée Distance Distance de vol TaxiIn taxi time from wheels down to arrival at the gate, in minutes TaxiOut taxi time from departure from the gate to wheels up, in minutes Cancelled cancellation status CancellationCode cancellation code, if applicable
  • 34. Page | 34 MINIPROJETBIGDATA Diverted diversion status CarrierDelay delay, in minutes, attributable to the carrier WeatherDelay delay, in minutes, attributable to weather factors NASDelay delay, in minutes, attributable to the National Aviation System SecurityDelay delay, in minutes, attributable to security factors LateAircraftDelay delay, in minutes, attributable to late-arriving aircraft On applique la fonction rxsummary pour ArrDellay, on trouve donc : Avant tout ca , on doit tout d’abord importer notre fichier de l’annee 2008 selon la forma suivante Chargement de données Temps de l’exécution de l’opération Le nombre des fichiers existe
  • 35. Page | 35 MINIPROJETBIGDATA La moyenne de retard vaut 8.16 min, l’écart type vaut 38.50 4 La valeur minimum indique qu’il existe des vols qui sont partis avant le temps de départ (519 min avant le temps réel du départ) On observe aussi que les valeurs observées sont : 6 855 029 et les valeurs que l’analyse n’arrive pas à les détectés sont :154 699. On affiche maintenant les informations générales sur l’arrive en retard et le temps prévue de départ du vol. Application de la fonction rxHistogram : 4 On a attendu presque 3 minutes pour avoir les résultats : La moyenne L’écart type Les valeurs observées Le temps de compilation Les valeurs mesurées
  • 36. Page | 36 MINIPROJETBIGDATA Il affiche les résultats suivants : On a trouvé le graphe suivant : Les chiffres de 1 à 7 correspondant aux lundi, mardi , …, Dimanche respectivement On applique la fonction de rxlinmod pour avoir le modelé linéaire et ces coefficients et on a attendu 7 minutes pour avoir les résultats :
  • 37. Page | 37 MINIPROJETBIGDATA Ce calcul est compilé en 4.415 seconds L’affichage du temps d’exécution en utilisant la fonction rxLinMod() : Donc le temps au cours de l’utilisation est de 1.96s.
  • 38. Page | 38 MINIPROJETBIGDATA − Comparaison avec Biglm : Chargement de la bibliotheque : On applique la même fonction system.time pour voir le temps d’exécution On trouve pour cette partie la chose suivante : C’est 64.73 s c.-à-d. une augmentation de : 3202.5 fois d’où l’importance d’application de package RevoScaleR.
  • 39. Page | 39 MINIPROJETBIGDATA Partie 2: La cartographie I. Cartographies, Cartes: 1. Qu’est-ce que la cartographie : La cartographie a pour but la représentation de la Terre ou d’une autre planète sous une forme géométrique et graphique grâce à la conception, la préparation et la réalisation de cartes. La cartographie est à la fois une science, un art et une technique. • C’est une science, car ses bases sont mathématiques, notamment en ce qui concerne la détermination de la forme et des dimensions de la Terre puis le report de la surface courbe de la Terre sur un plan (la carte) grâce au système des projections et enfin l’établissement d’un canevas planimétrique et altimétrique. L’enjeu est la précision et la fiabilité de la carte. • C’est un art, car en tant que mode d’expression graphique, la carte doit présenter des qualités de forme (esthétique et didactique grâce à la clarté du trait, à son expressivité et sa lisibilité) afin d’exploiter au mieux les capacités visuelles du lecteur. Cela exige de la part du concepteur et du réalisateur des choix dans la représentation. • C’est enfin une technique, car elle nécessite d’amont en aval, l’emploi d’instruments dont les progrès ont bouleversé toute la filière cartographique (photographies aériennes, satellites, ordinateurs, impression et diffusion, etc.). L’enjeu est de considérer la cartographie comme art d’expression et comme un outil d’analyse, d’aide à la décision et de communication. Les méthodes de la cartographie, c’est-à-dire la démarche et la réflexion intellectuelle que supposent l’acte de concevoir, réaliser puis lire des cartes
  • 40. Page | 40 MINIPROJETBIGDATA La notion de carte n’est pas à confondre avec celle de plan* qui représente un espace restreint. On parle de plans de maison, de quartier voire de ville mais jamais de plan de France ou d’une région. thématiques nécessitent d’autres compétences. Lire une carte thématique est en soit un acte complexe qui ne répond à aucune recette prédéterminée. L’expérience du lecteur dans un domaine quelconque et sa capacité à décrypter la trame de l’organisation de l’espace géographique sont les deux facteurs-clefs de la lecture efficace d’une carte. Il est cependant plus aisé de cerner les acquis que réclament la conception puis la réalisation d’une carte thématique puisqu’ils découlent plus ou moins directement d’une logique dans le choix du langage cartographique. Pour résumer, le respect d’une série de règles et de méthodes est garant d’une cartographie thématique efficace et fiable. 2. Carte : Objet très ancien, plus ou moins complexe, aux multiples facettes et utilisations, onne peut donner une seule définition de la carte. Toutes les cartes ont néanmoins un point commun, celui de représenter une portion de l’espace terrestre. Retenons deux définitions de la carte : • Selon F. Joly, « une carte est une représentation géométrique, plane, simplifiée et conventionnelle de tout ou partie de la surface terrestre et cela dans un rapport de similitude convenable qu’on appelle échelle ». • La carte est un dessin réduit et à plat du Monde ou d’une portion du Monde. Elle peut être aussi et d’autre part une représentation sur un fond de carte géographique, d’un phénomène quelconque concret ou abstrait. Cette représentation est faite sur papier ou sur un autre support tel le verre, le bois ou un écran d’ordinateur. Une carte est conçue à la main ou par une machine. Les distances sur la carte sont toujours dans le même rapport que sur le terrain.
  • 41. Page | 41 MINIPROJETBIGDATA De ces définitions se dégagent cinq grands principes dont les conséquences pratiques guident ou devraient guider le travail de tout cartographe, professionnel ou non. • La carte est une représentation, un dessin : la carte est donc un document visuel. Ceci explique que la conception et la réalisation d’une carte doivent respecter des règles simples mais rigoureuses, issues des lois de la perception visuelle. • La carte est une représentation plane : la carte matérialise le passage de la sphère terrestre à un plan. Ce passage est réalisé grâce au procédé des projections. L’obligation de la projection implique qu’aucune carte n’est fidèle à la forme réelle de la surface terrestre. De plus, selon la projection retenue, le visage du territoire projeté sera très différent. Cette contrainte n’est impérieuse que dans le cadre d’une cartographie de grandes étendues de terrain (travail à petite échelle). • La carte est une représentation réduite : une carte n’a pas pour objectif de représenter l’espace en vraie grandeur. Au contraire, le but est d’obtenir document maniable sur lequel est représenté le terrain selon un rapport de réduction : l’échelle. • La carte est une représentation simplifiée : la réduction impose une série d’opérations graphiques que l’on regroupe sous le nom générique de généralisation et qui visent à choisir les objets à représenter et à remplacer leurs formes observées sur le terrain par des figurés conventionnels. • La carte est une représentation conventionnelle : le cartographe utilise un langage, le langage cartographique, qui possède sa propre grammaire. Sa connaissance permet de transmettre au mieux une information géographique. De même que la définition de la cartographie a laissé entrevoir les deux grandes branches de cette discipline, celle de la carte différencie deux grands types de cartes : d’une part les cartes de base (appelées également cartes générales ou
  • 42. Page | 42 MINIPROJETBIGDATA encore cartes classiques) issues de la cartographie mathématique et d’autre part les cartes spéciales. Dès le 17ème siècle, l’homme a cartographié la Terre dans un but moins restrictif que celui de représenter la topographie des pays et de décrire la Terre. Les cartes sont devenues des instruments de connaissance, de décision, de prévision et de planification au service des Etats. Sont donc apparues des cartes spéciales ou cartes spécialisées aujourd’hui communément appelées cartes thématiques. 3. Cartographie sous R : théorie et pratique : Dans de nombreuses situations, il peut être utile de représenter graphiquement des disparités géographiques, par le biais d’une carte. Même si R n’est pas un outil cartographique dédié (comme peut l’être ArcGIS ou QGIS), de nombreux packages existent pour permettre de manipuler des données spatiales et pour fabriquer des cartes. L’utilisation de R peut s’avérer judicieuse quand il s’agit d’introduire la production de carte dans un workflow d’analyse reposant déjà sur R. On évite ainsi de multiples importations/exportations des données avec leur lot de problèmes et erreurs, et on profite de la flexibilité du langage R et ses packages. Ce document a pour but : • D’introduire les principales notions théoriques en termes de cartographie • De montrer en pratique comment réaliser une carte à l’aide des principaux packages (dont rgdal, sp) 3.1 Cartographie sous R : théorie Pour réaliser une carte, on a généralement recours à plusieurs ingrédients : • Un fond de carte sur lequel nous allons ajouter nos propres données. • Un ensemble de données géolocalisées, qui peuvent s’appliquer soit à un point, soit à une zone, qui devront être jointes à notre fond de carte.
  • 43. Page | 43 MINIPROJETBIGDATA • Un système de coordonnées cartographique et une projection qui déterminent la façon dont les données géographiques sont représentés. 3.1.1 Le fond de carte Un fond de carte permet de représenter graphiquement les caractéristiques d’une région géographique d’intérêt. Le fond de carte permet de “planter le décor” et d’apporter les éléments contextuels utiles. C’est sur ce fond de carte que vont venir se greffer nos données géolocalisées. Il existe une quantité infinie de fond de carte différent, qui peuvent grossièrement être rangés dans deux catégories : • Les représentations vectorielles (ou vector layer). Dans ce cas, les caractéristiques de la région d’intérêt sont représentées sous la forme d’un ensemble de formes (ou features) comme des points ou des tracés (lignes, polygones…). Ce format est particulièrement adapté à la représentation de zones géographiques bien délimitées, telles que les limites administratives (pays, régions, départements, communes), les limites géologiques, l’emplacement de villes, etc… • Les représentations matricielles (ou raster layer). Dans ce cas, les caractéristiques de la région d’intérêt sont stockées sous la forme d’une image (ensemble de pixel rangé en lignes/colonnes, d’où le nom). A chaque pixel est associé une valeur, permettant de décrire les
  • 44. Page | 44 MINIPROJETBIGDATA caractéristiques. Par exemple, l’altitude peut être représentée sous la forme de pixels allant du vert au rouge, les plans d’eau peuvent être représentés par des pixels de couleur bleu, etc… Bien évidemment, il est possible de combiner plusieurs représentations pour créer un fond de carte plus complexe. 3.1.2 Données géolocalisées De nos jours, les données géolocalisées ne sont pas ce qui manque. Les données géolocalisées peuvent être rattachées à une zone particulière (ex : à une région ou un département français), ou bien être rattachées à un point (ex : coordonnées GPS votre domicile). En fonction du type de données (zone/point), l’exploitation qui peut en être faite va varier. Avec des données de zone, il est possible de créer des cartes à bases d’aplat de couleurs, ou carte choroplèthe. Avec des données de points, on utilisera plutôt des représentations ponctuelles (ex : un point de taille variable, en fonction de la valeur) ou des représentations de densité/intensité (carte de chaleur, ou heatmap). Pour les données de zone, on a généralement des données au format suivant : • Une colonne pour l’identifiant de la zone concernée • Une ou plusieurs colonnes contenant les valeurs des variables d’intérêt (ex : population/m², nombre d’hospitalisations…) L’enjeux sera alors généralement de fusionner sous R ces informations de zones à un objet décrivant ces zones (lui-même issu d’un fichier SHP le plus souvent). Par exemple, rattacher les informations sur le nombre d’hospitalisation par départements à un objet spatial contenant les contours des départements… A noter que dans ce cas-là, les problèmes de coordonnées/projection ne se posent qu’à la création de l’objet spatial, pas à l’import des données. Pour les données ponctuelles, on a généralement les données au format suivant :
  • 45. Page | 45 MINIPROJETBIGDATA • Une colonne longitude • Une colonne latitude • Une ou plusieurs colonnes contenant les valeurs des variables d’intérêt Dans cette situation, il est impératif de connaître le système de coordonnées utilisé pour le calcul des coordonnées géographiques, sans quoi la représentation sera fausse. Le plus souvent, c’est le système WGS84 qui sera utilisé (si on parle de GPS quelque part ou que ce n’est pas précisé, c’est le WGS84…). Si on souhaite fusionner ces données à un objet spatial (raster ou vectoriel), il faudra s’assurer que les systèmes de coordonnées et la projection est la même. L’enjeu sera ici de créer un objet spatial à partir des coordonnées longitude/latitude, puis d’ajouter/fusionner les données d’intérêt. 3.1.3 Système de coordonnées et projection cartographique Imaginons qu’on souhaite expliquer à quelqu’un où se situe précisément Paris sur la Terre. Il y a une quantité infinie de façon de le faire, en fonction du référentiel utilisé. Prenons par exemple comme point d’origine Rio de Janeiro, au Brésil. Dans ce cas-là, on peut situer Paris en précisant que la ville est à X km vers l’Est, et à Y km vers le Nord. A partir du point d’origine (Rio de Janeiro) et des coordonnées (X, Y), vous avez la position de Paris. Cette position sous-entend que la position de Rio de Janeiro est déjà connue, et qu’il est admis que les coordonnées sont données en Est puis Nord, en kilomètres. Mais, si cela peut sembler suffisant de première abord, il existe un grand nombre de paramètres qui ne sont pas pris en compte ici : la dérive des continents (la distance Rio/Paris change constamment), la déformation de la Terre (qui n’est pas une sphère parfaite), l’altitude…
  • 46. Page | 46 MINIPROJETBIGDATA En pratique, pour positionner des éléments sur le globe, on a recours aux coordonnées à base de latitude/longitude. Ces coordonnées vont dépendre de plusieurs éléments, les principaux étant : • L’ellipsoïde de référence, c’est-à-dire la forme de la sphère qui va représenter la Terre. Comme dit juste au-dessus, la terre n’est pas une sphère parfaite : elle présente des irrégularités plus ou moins importantes selon les endroits (en gros, c’est une patatoïde !). Pour les calculs, on utilise des approximations, des formes simplifiées qui s’approche de la forme de la Terre : des ellipsoïdes de révolution. En fonction des utilisations et de la représentation voulue, le choix de l’ellipsoïde doit être adapté. Par exemple, pour une représentation globale de la Terre, on choisira l’ellipsoïde globalement le plus proche de la forme générale de la Terre. A l’inverse, pour une représentation d’une zone particulière (ex : la France) on peut utiliser un ellipsoïde plus proche de la forme de la Terre à cette zone, pour des raisons de précisions. Parmi les ellipsoïdes fréquemment utilisés, on peut citer le WGS84 (celui utilisé dans le système du même nom) ou l’IAG-GRS80 (celui utilisé dans le système Lambert-93). A noter que, malgré quelques différences subtiles, ces deux ellipsoïdes sont quasi-identiques.
  • 47. Page | 47 MINIPROJETBIGDATA • Un point d’origine. Selon les cas, l’origine sera déterminée soit par la position du centre de l’ellipsoïde, soit par un point de référence à la surface de la terre. On regroupe l’ensemble de ces éléments sous le terme de système de coordonnées géographique (coordinate reference system ou CRS pour nos amis anglais) ou de datum. Il en existe une très grande quantité. Pour faire de la cartographie, un paramètre supplémentaire est nécessaire. En effet, une carte est une représentation plane du globe terrestre, il faut donc appliquer une projection aux coordonnées pour pouvoir les afficher dans un plan. Là aussi, de multiples possibilités s’offre à nous : projection cylindrique, projection conique… avec des propriétés distinctes. Le choix de la projection va fortement influencer le rendu sur la carte (ex : taille et forme des pays). L’ensemble datum + projection est désigné par le terme système de référence spatiale (spatial reference system ou SRS). Ils sont référencés sous la forme d’un code EPSG à 4 chiffres, pour simplifier leur utilisation. 3.2 Cartographie sous R : pratique Nous allons utiliser les packages « sp » et « rgdal » pour importer un fond de carte au format SHP reprenant le tracé des communes de France. Nous travaillerons ensuite sur l’Ile-de-France : des données extérieures sur le temps de parcours pour hospitalisation seront jointes à notre object spatial, et une carte basée sur ces données sera produite. Les packages « RColorBrewer » et « classInt » seront utilisés pour sélectionner des groupes de couleurs adaptées, et pour catégoriser simplement des variables, respectivement. Le rendu des cartes se fera par l’intermédiaire du package base, partie intégrante de la distribution standard de R. D’autres packages, comme « ggplot2 », « rCarto », « maptools » ou « ggmap » (un dérivé de « ggplot2 ») peuvent être utilisés. Des exemples utilisant ces packages seront ajoutés à l’avenir.
  • 48. Page | 48 MINIPROJETBIGDATA Première chose à faire : installer et charger les packages nécessaires # Importation des librairies nécessaires 3.2.1 Chargement des données spatiales Il existe plusieurs façons de charger des données spatiales dans R, faisant intervenir différents packages. Ici, nous utiliserons uniquement les fonctions de chargement issus du packages « rgdal ». Ce package est une interface entre R et la “Geospatial Abstraction Library” (GDAL), une bibliothèque de fonctions dédiées aux manipulations de données spatiales très largement utilisée.) La fonction « ogrInfo » permet de scanner les données que l’on veut manipuler, de façon à vérifier qu’elles seront bien lues et reconnues par la suite. Cette fonction « ogrInfo » (tout comme « readOGR », qu’on va voir plus loin) prend 2 arguments indispensables : • le chemin pointant vers le fichier SHP et ses données associées. Si vos données sont dans le répertoire courant de travail sous R, il est quand même nécessaire de remplir cet argument, avec “.” (le point . désignant sous R le répertoire de travail courant) • le nom du layer, c’est-à-dire le nom du fichier .SHP (sans mettre l’extension au bout). Il est communément admis que l’ensemble des fichiers relatifs au fichier SHP portent le même nom, seule l’extension change. Ex : COMMUNE.SHP est accompagné de COMMUNE.PROJ, de
  • 49. Page | 49 MINIPROJETBIGDATA COMMUNE.DBF, etc. Ainsi, avec une commande, R va charger le SHP, reconnaitre la projection et charger les données associées… On commence par déterminer l’emplacement de notre fichier SHP, et on scan son contenu : # Emplacement de l'archive décompressée, à remplacer par le notre # Description des données via orgInfo Ici, on voit que les données sont correctement reconnues (driver adapté au format ESRI Shapefile, le SRS est reconnu, les données associées sont bien présentés). A noter que pour accéder directement aux données de coordonnées/projection (pour
  • 50. Page | 50 MINIPROJETBIGDATA vérifier ou modifier ces informations), il est plus simple d’utiliser directement la fonction « proj4string() ». Les données étant OK, on peut importer le fichier SHP et ses données associées via la fonction « readOGR() », afin de créer un objet nommé ici comm. On regarde ensuite la structure de l’objet crée par « rgdal » . # Importation via la fonction readOGR de rgdal # Description de la structure globale Les objets créés via « readOGR » ont des structures particulières. Ils sont divisés en plusieurs sous-objets, ou slots, préfixé par le symbole @. Chaque sous-objet possède sa propre structure, et ses propres informations. Pour y accéder, la commande suit le même motif que pour accéder à une variable dans un dataframe, mais via le symbole @ au lieu du symbole $.
  • 51. Page | 51 MINIPROJETBIGDATA Les informations de géométries, relatives au fichier .SHP, sont stockées dans les slots « @polygons », « @plotOrder » et « @bbox ». Les données associées, issues du fichier .DBF, sont dans le slot « @data ». Enfin, les données de projection, issues du fichier .PROJ, sont dans un slot à part, « @proj4string ». Pour plus d’informations, vous pouvez regarder la documentation accompagnant cette classe particulière avec la commande « class?SpatialPolygons ». Jetons par curiosité un oeil au slot « @data » : # Description de la structure des données associées On voit ici le nom des variables importées, et leur format (numérique, caractère…). De même pour le slot « @polygons » : # Description de la structure des données vectorielles head(comm@polygons, n=1) Nos données associées, comme le code INSEE de la commune, son nom, son statut administratif, sa superficie, sa population, etc… sont correctement importées dans notre slot « @data ». On peut dès à présent fabriquer une carte très simple représentant les contours des communes, à partir des données spatiales extriates. A titre d’exemple, on va utiliser ici la nouvelle méthode de « plot », spécifique à la classe « SpatialPolygons » et ajouté par le package sp. Concrètement, cet ajout permet d’utiliser la fonction classique « plot » pour représenter graphiquement des objets spatiaux.
  • 52. Page | 52 MINIPROJETBIGDATA # On représente les contours des communes de France avec la fonction plot plot(comm) Il y vraiment beaucoup de communes en France ! Du coup, une telle carte est difficilement lisible et particulièrement longue à créer..Et si on se limitait à l’Ile-de- France pour nos tests ? Pour représenter uniquement les communes d’Ile-de-France (astuce : c’est la région numéro 11), il suffit d’appliquer une sélection “classique” à l’objet « comm » grâce aux variables à notre disposition, comme on pourrait le faire avec un dataframe. # On plot les communes contenues dans l'Ile-de-France (CODE_REG égal à 11)
  • 53. Page | 53 MINIPROJETBIGDATA plot(comm[comm$CODE_REG=="11",],) On obtient donc bien la carte des contours des communes d’Ile-de-France. Supposons maintenant qu’on veut faire ressortir de cette carte les communes dont la population est de moins de 10 000 habitants. On peut chaîner les critères de sélections, comme on le fait habituellement via & ou | :
  • 54. Page | 54 MINIPROJETBIGDATA # Communes d'IDF avec moins de 10 000 habitants Notre carte ressemble à du gruyère ! C’est normal, puisque R n’a représenté que les communes remplissant nos critères. Les autres communes n’ont donc pas été traitées et sont absentes de la carte… 3.2.2 Utiliser des données externes dans notre carte Nous avons vu comment créer une carte très simple à partir de données spatiales et des données associées. Les données associées sont généralement très limitées, et ne contiennent pas le plus souvent les informations qui nous intéressent réellement. Il est donc nécessaire de marier nos données spatiales avec des données externes. Pour cet exemple, on a choisi un jeu de données décrivant la distance parcourue par un patient pour se rendre sur son lieu d’hospitalisation. Cette distance est calculée ici en terme temps moyen de trajet (en minutes) pour accéder en voiture au lieu d’hospitalisation. Comme d’habitude, le fichier est au format XLS et comporte des mentions (titre, précision, etc.…) rendant son utilisation directe impossible. Pour gagner du temps, vous trouverez ici une version utilisable de la table de données. Commençons par importer nos données : # Emplacement des données
  • 55. Page | 55 MINIPROJETBIGDATA # Import des données en respectant le format "Character" des codes communes tempsTrajet <- read.csv2(file = pathToData, stringsAsFactor = FALSE, colClasses = c("character", "integer")) # Verification import Nous avons donc d’un coté notre objet « comm » comprenant nos données spatiales et les données associées, et d’un autre côté notre objet « tempsTrajet » comprenant nos données externes. L’idée est de rajouter nos données externes aux données associées déjà présentes dans notre slot « @data ». De cette façon, on conserve les informations de base (le nom des communes, leur numéro de département, etc…) tout en ajoutant les informations pertinentes pour nos analyses (les temps de trajet). Plusieurs façons de réaliser cet ajout sont possibles. De façon générale, il faut faire attention à ne pas bousculer l’ordre des données du slot « @data » car ces données sont jointes ligne-à-ligne avec les données spatiale. On peut utiliser la fonction « match () », la classique fonction « merge() », voir la fonction « left_join() » issue du package « dplyr » (les habitués du SQL seront en terrain familier). Pour la beauté de l’exemple, la fonction « match() » est utilisée ici. On constitue un nouveau dataframe, composé d’une part des données originales, et d’autre part des données de temps de trajet, rangées dans le même ordre que les données originales, grâce à « match() ». Les variables clefs permettant d’identifier uniquement chaque commune n’étant pas les mêmes dans les deux jeux de données, elles sont précisées manuellement. # On remplace le slot @data par un nouveau tableau de données, contenant les anciennes données + les nouvelles
  • 56. Page | 56 MINIPROJETBIGDATA On a bien fusionné nos informations, mais on remarque au passage que nous avons récupéré toutes les colonnes de « tempsTrajet », y compris la variable « commune » qui fait doublon, mais passons. En étant plus pragmatique, nous aurions pu faire un simple : # Chargement de dplyr
  • 57. Page | 57 MINIPROJETBIGDATA # On remplace le slot @data par un nouveau tableau de données, contenant les anciennes données + les nouvelles Imaginons maintenant qu’on souhaite produire la carte des temps de trajet, pour la région Ile-De-France. Nous allons réduire notre jeu de données pour ne garder que la région Ile-De-France. Nous allons aussi utiliser « classInt » pour discrétiser notre temps de trajet, et « RColorBrewer » pour choisir des couleurs adaptées à notre nouvelle variable discrète. # Filtrage des données pour ne garder que la région Ile-De-France # Vérification # Découpage du temps de trajet en 5 classes via la méthodes des quantiles : idenfication des bornes (breaks, ou brks) classTemps <- classIntervals(idf@data$temps, 5, style = "quantile") # Choix d'une palette de couleur pour les 5 catégories # Application de ce découpage à variable temps, sauvegarde dans temps_cat
  • 58. Page | 58 MINIPROJETBIGDATA # On stocke, pour chaque observation, la valeur de la couleur correspondante # On stocke l'information des classes pour créer une légende # Vérification Il ne reste plus qu’à faire notre carte : # Avec le package base
  • 59. Page | 59 MINIPROJETBIGDATA CONCLUSION L'explosion quantitative des données statistiques a obligé les chercheurs à trouver de nouvelles manières de voir et d'analyser le monde. Il s'agit de découvrir de nouveaux ordres de grandeur concernant la capture, la recherche, le partage, le stockage, l'analyse et la présentation des données comme le Big Data.
  • 60. Page | 60 MINIPROJETBIGDATA Partie 3 : ACP (Analyse en Composantes Principales) : Généralité : n individus observés sur p variables quantitatives. L’A.C.P. permet d’explorer les liaisons entre variables et les ressemblances entre individus. Résultat : (ce qu’il faut obtenir après application de ACP) ➢ Visualisation des individus (Notion de distances entre individus) ➢ Visualisation des variables (en fonction de leurs corrélations) INTERPRÉTATION DES RÉSULTATS DETAILS : 1-Mesurer la qualité des représentations obtenues : -critère global. -critères individuels. 2- « Donner des noms aux axes » : -Expliquer la position des individus 3- Utilisation éventuelle de variables supplémentaires Position du Problème: 1-LES DONNÉES p variables quantitatives observées sur n individus. On cherche à représenter le nuage des individus. A chaque individu noté ei, on peut associer un point dans Rp = espace des individus. A chaque variable du tableau X est associé un axe de Rp.
  • 61. Page | 61 MINIPROJETBIGDATA Alors impossible à visualiser dès que p > 3 !!!!!!!! Principe de la méthode ACP :
  • 62. Page | 62 MINIPROJETBIGDATA « Perdre le moins d’information possible» sont basées sur les notions de : - Distance - projection orthogonale
  • 63. Page | 63 MINIPROJETBIGDATA 3. LE CHOIX DE LA DISTANCE ENTRE INDIVIDUS : Pour résoudre ce problème, on choisit de transformer les données en
  • 64. Page | 64 MINIPROJETBIGDATA données centrées-réduites. L’observation est alors remplacée par : UNITÉS D’ÉCART TYPE: Exemple : Puissance moyenne de 30 voitures = 92 ch Ecart-type = 24 ch La Renault 21 TXI a une puissance de 140 ch La Renault 21 TXI a une puissance de : 2 écarts-type au-dessus de la moyenne. 4. INERTIE TOTALE : L’inertie mesure la dispersion totale du nuage de points. L’inertie est donc aussi égale à la somme des variances des variables étudiées.
  • 65. Page | 65 MINIPROJETBIGDATA En notant V la matrice de variances-covariances : Remarque : Dans le cas où les variables sont centrées réduites, la variance de chaque variable vaut 1. L’inertie totale est alors égale à p (nombre de variables). Équivalence des deux critères concernant la perte d’information.
  • 66. Page | 66 MINIPROJETBIGDATA LA SOLUTION DU PROBLÈME POSÉ : La recherche d’axes portant le maximum d’inertie équivaut à la construction de nouvelles variables (auxquelles sont associés ces axes) de variance maximale. En d’autres termes, on effectue un changement de repère dans Rp de façon à se placer dans un nouveau système de représentation où le premier axe apporte le plus possible de l’inertie totale du nuage, le deuxième axe le plus possible de l’inertie non prise en compte par le premier axe, et ainsi de suite. Cette réorganisation s’appuie sur la diagonalisation de la matrice de variances-covariances. SOLUTION : Axes principaux : On appelle axes principaux d’inertie les axes de direction les vecteurs propres de V normés à 1. Il y en a p. Le premier axe est celui associé à la plus grande valeur propre. On le note u1
  • 67. Page | 67 MINIPROJETBIGDATA Le deuxième axe est celui associé à la deuxième valeur propre. On le note u2 Composantes principales : À chaque axe est associée une variable appelée composante principale. La composante c1 est le vecteur renfermant les cordonnées des projections des individus sur l’axe 1. La composante c2 est le vecteur renfermant les cordonnées des projections des individus sur l’axe 2. Pour obtenir ces coordonnées, on écrit que chaque composante principale est une combinaison linéaire des variables initiales. Exemple : 2. PROPRIÉTÉS DES COMPOSANTES PRINCIPALES : 1-La variance d’une composante principale est égale à l’inertie portée par l’axe principal qui lui est associé. 1ère composante c1 variance : λ1 2ème composante c2 variance : λ2 3ème composante c3 variance : λ3 2- Les composantes principales sont non corrélées deux à deux. En effet, les axes associés sont orthogonaux. 3. REPRÉSENTATION DES INDIVIDUS : La jème composante principale fournit les coordonnées des n individus sur le jème axe principal.
  • 68. Page | 68 MINIPROJETBIGDATA Si on désire une représentation plane des individus, la meilleure sera celle réalisée grâce aux deux premières composantes principales. 4. REPRÉSENTATION DES VARIABLES Les « proximités » entre les composantes principales et les variables initiales sont mesurées par les covariances, et surtout les corrélations. r (cj ,xi ) est le coefficient de corrélation linéaire entre c j et xi
  • 69. Page | 69 MINIPROJETBIGDATA 5. INTERPRETATION DES « PROXIMITÉS » ENTRE VARIABLES On utilise un produit scalaire entre variables permettant d’associer aux paramètres courants : écart-type, coefficient de corrélation linéaire des représentations géométriques. On suppose les variables centrées.
  • 70. Page | 70 MINIPROJETBIGDATA III. VALIDITÉ DES REPRÉSENTATIONS : 1. CRITÈRE GLOBAL : Mesure la part d’inertie expliquée par l’axe i. Exemple : Est la part d’inertie expliquée par le premier plan principal. Ce critère (souvent exprimé en pourcentage) mesure le degré dereconstitution des carrés des distances. La réduction de dimension est d’autant plus forte que les variables de départ sont plus corrélées. Combien d’axes ?
  • 71. Page | 71 MINIPROJETBIGDATA Différentes procédures sont complémentaires : 1-Pourcentage d’inertie souhaité : a priori 2-Diviser l’inertie totale par le nombre de variables initiales ➔ Inertie moyenne par variable : I.M. Conserver tous les axes apportant une inertie supérieure à cette valeur I.M. (Inertie > 1 si variables centrées réduites). 2. CRITÈRES INDIVIDUELS : Pour chaque individu, la qualité de sa représentation est définie par le carré du cosinus de l’angle entre l’axe de projection et le vecteur .
  • 72. Page | 72 MINIPROJETBIGDATA Plus la valeur est proche de 1, meilleure est la qualité de représentation En général, les qualités de représentation sont données axe par axe. Pour avoir la qualité de représentation dans un plan, on additionne les critères correspondant aux axes étudiés. Ce critère n’a pas de signification pour les individus proches de l’origine. Quand on détecte un individu pour lequel le cosinus carré est faible, on doit tenir compte de sa distance à l’origine avant d’indiquer qu’il est mal représenté Contributions : Il est très utile aussi de calculer pour chaque axe la contribution apportée par les divers individus à cet axe. Considérons la kième composante principale Ck, soit Cik la valeur de la composante pour le ième individu. Remarque : ✓ Il n’est pas souhaitable qu’un individu ait une contribution excessive (car facteur d’instabilité) ➔ éliminer les individus dont la contribution est trop importante. ✓ Problème des enquêtes par sondage 3. REPRÉSENTATION DES VARIABLES :
  • 73. Page | 73 MINIPROJETBIGDATA 4. INTERPRÉTATION EXTERNE : VARIABLES ET INDIVIDUS SUPPLÉMENTAIRES (ILLUSTRATIFS) : 4.1 Variables •Variable quantitative : On calcule le coefficient de corrélation entre la variable supplémentaire et les composantes principales. Ceci permet sa représentation sur le cercle des corrélations.
  • 74. Page | 74 MINIPROJETBIGDATA 4. Etude de cas sous « Logiciel XLSTAT » XLSTAT est un logiciel d’analyse de données convivial qui s’intègre a Excel Historique : c’est un logiciel en pleine croissance
  • 75. Page | 75 MINIPROJETBIGDATA XLSTAT en quelques chiffres Statistiques : 4 catégories
  • 76. Page | 76 MINIPROJETBIGDATA Tableau de données : plateforme de vente de chaussures en ligne Nuage de points coloré par groupe :
  • 77. Page | 77 MINIPROJETBIGDATA Commentaires : -Montant facture diminue avec temps passé sur le site -Clients plutoniens passent moins de temps sur le site que les autres Remarque : Imaginez le même raisonnement sur un nombre plus élevé de variables… Dans ce cas, on veut raisonner de la même manière qu’avec le nuage de points (2D), mais en utilisant un tableau a plus de 2 colonnes (dimensions)
  • 78. Page | 78 MINIPROJETBIGDATA On veut pouvoir résumer un jeu de données à plusieurs colonnes sur quelques graphiques simples. On pourra examiner : -Les relations entre variables -La proximité des individus entre eux -La caractérisation des individus par les variables ACP : Concept ACP : paramétrage sur XLSTAT
  • 79. Page | 79 MINIPROJETBIGDATA ACP : A quoi ça ressemble, en réalité ? ACP : Interprétation des axes
  • 80. Page | 80 MINIPROJETBIGDATA ACP : explorations …
  • 81. Page | 81 MINIPROJETBIGDATA Focus sur la notion de groupes ‘homogènes d’individus détectés’ : Conclusion : Au cours de la réalisation de notre projet, on a eu l’occasion d’améliorer nos connaissances acquises durant notre formation et aussi d’approcher un petit peu la notion de Big Data qui est très importante. Finalement, On souhaite que ce modeste travail trouve une bonne appréciation et sera un manuel d’information pour toutes les étudiantes et tous les étudiants
  • 82. Page | 82 MINIPROJETBIGDATA Annexe : Le processus d’installation de RHadoop sur Machine virtuelle Cloudera sur VirtualBox : A. Téléchargement et installation de VirtualBox : • On télécharge le logiciel à partir de son site officiel https://www.virtualbox.org/ • On choisit la version convenable avec notre système d’exploitation (Windows, OS, Linux, etc..)
  • 83. Page | 83 MINIPROJETBIGDATA • Apres l’installation, on doit avoir trouver une page d’accueil comme celle-ci : B. Téléchargement et installation de Cloudera sur VirtualBox : • On ouvre le lien suivant https://www.cloudera.com/downloads/quickstart_vms/5- 13.html et on choisit le platform convenable (Virtual Box) :
  • 84. Page | 84 MINIPROJETBIGDATA • Après avoir remplir un formulaire, vous pouviez télécharger votre Cloudera QuickStarts 5.13 (c’est presque 6GO) • On revient à la page d’accueil de VirtualBox et on clique sur importer • On choisit le fichier virtuel (Cloudera QuickStarts 5.13)5 5 Ce fichier doit être extrait en deux fichiers. 1 2
  • 85. Page | 85 MINIPROJETBIGDATA • En cliquant sur Suivant, après on clique sur Importer et on le laisse installer et configurer notre Cloudera 6 • Avant de démarrer notre Cloudera, on doit vérifier qu’on a les configurations suivantes : • En cliquant sur notre machine virtuelle, on clique sur Configuration et on fixe les configurations suivantes : 7 6 C’est environ 3 ou 4 minutes. 7 Si vous ne trouvez pas la version 64-bit, il faut modifier la VIRTUALIZATION en Enabled dans votre Windows BIOS. Vous pouviez consulter la vidéo suivante pour bien comprendre https://www.youtube.com/watch?v=-Wa7TGjmn5M. Il est obligatoirement demandé qu’on installe la version (64-bit) 1 2
  • 86. Page | 86 MINIPROJETBIGDATA • On clique sur Système et on fait les configurations suivantes : o Pour la RAM. Pour la RAM, on choisit le plus grand possible sans toucher les configurations de Système d’Exploitation réel o Pour le Processeur. La même chose ici, on choisit le plus grand possible. • Maintenant, on démarre notre Cloudera en cliquant sur démarrer
  • 87. Page | 87 MINIPROJETBIGDATA Le premier démarrage prend en général entre 4 et 5 minutes.8 C. L’installation de R, RStudio et les packages nécessaires : Après avoir démarrer votre Cloudera, Voici l’image que vous allez trouver : 8 Ces intervalles du temps se peuvent être changé selon la RAM , Le PROCESSEUR de votre Ordinateur.
  • 88. Page | 88 MINIPROJETBIGDATA • L’installation de R et de RStudio est simple, il suffit d’ouvrir un Terminal et écrire les lignes suivantes : #Installation de R $ sudo yum install R il doit vous donner de télécharger des packages nécessaires, vous répondriez oui (c’est ‘y’ qui signifie Yes) Pour vérifier que R est bien installer, on écrit $sudo R , vous allez trouver : Terminal Pour accéder au moteur de recherche
  • 89. Page | 89 MINIPROJETBIGDATA ✓ L’installation de packages nécessaires : • En démarrant R en mode administrateur via le terminal : $sudo R. • On installe les packages nécessaires pour programmer dans Hadoop : install.packages(c("RJSONIO","Rcpp", "bitops", "caTools", "digest","functional", "stringr", "plyr", "reshape2","rJava"))9 − Installation des packages spécifiques sous R : Tout d’abord, on doit télécharger les fichiers de packages rhdfs et rmr2 : − On ouvre le lien suivant et on télécharge les deux fichiers suivants : − https://github.com/RevolutionAnalytics/RHadoop/wi ki/Downloads − 9 Si vous avez trouvé des difficultés au cours de l’installation de ces packages, vous pouviez utiliser la fonction install.packages() toute seule et sans paramètres et choisissez les packages nécessaires avec la source convenable ( US California ça marche très bien )
  • 90. Page | 90 MINIPROJETBIGDATA $ cd Downloads/ $ ls - l Il affiche les fichiers : On ouvre R en mode administrateur : 2 1
  • 91. Page | 91 MINIPROJETBIGDATA • Il faut d’abord spécifier les valeurs des variables d’environnement -indiquant la localisation du système hadoop sur notre machine - avant de pouvoir l’installer. Nous utilisons la Commande Sys.setenv() sous R. • d’où les deux packages sont bien installer • On ouvre un nouveau terminal et on télécharge RStudio en respectant les étapes suivantes : − On ouvre le lien suivant : https://www.rstudio.com/products/rstudio/download-server/
  • 92. Page | 92 MINIPROJETBIGDATA On choisit RedHat/CentOS − On choisit la version 64-bit : Pour le télécharger, on ouvre un terminal et on écrit : $ wget https://download2.rstudio.org/rstudio-server-rhel-1.1.463- x86_64.rpm Pour l’installer, on écrit : $ sudo yum install rstudio-server-rhel-1.1.463-x86_64.rpm − RStudio s’ouvre comme un server, pour savoir le server, on ouvre le terminal et on écrit : $ifconfig Par exemple, vous allez trouver :
  • 93. Page | 93 MINIPROJETBIGDATA Donc , on écrit http://127.0.0.1:8787/auth-sign-in : On trouve alors : cloudera cloudera
  • 94. Page | 94 MINIPROJETBIGDATA − Vous allez trouver la chose suivante : D. L’installation de package RevoScaleR pour utiliser les fonctions : rx-Summary, rx-LinMod,etc… Il faut savoir que La bibliothèque RevoScaleR est un ensemble de fonctions R portables, évolutives et distribuables permettant d'importer, de transformer et d'analyser des données à grande échelle. Parmi les packages de distribution de ce package, on trouve R Client de Microsoft Pour l’installer, il faut respecter les étapes suivantes : 1. L’installation de R Client Microsoft − Fermez RStudio s'il est déjà ouvert. − Démarrez une session de terminal et connectez-vous en tant que root (sudo su). − Ecrire le code suivant : rpm -Uvh https://packages.microsoft.com/config/rhel/6/packages- microsoft-prod.rpm − ls -la /etc/yum.repos.d/ #cette ligne est pour bien vérifier les configurations de l’enregistrement .
  • 95. Page | 95 MINIPROJETBIGDATA − yum install microsoft-r-client-packages-3.4.3 #c’est pour installer R client packages . 2. La configuration de RStudio pour RevoScaleR : − Fermez RStudio s'il est déjà ouvert. − Démarrez une session de terminal et connectez-vous en tant que root (sudo su). − Ecrire le code suivant : gedit /opt/microsoft/rclient/3.4.3/runtime/R/etc/Renviron − Ca va ouvrir un fichier, on cherche le fichier : R_LIBS_USER − On ajoute au-dessous de cette ligne la ligne suivante : R_LIBS_SITE=/opt/microsoft/rclient/3.4.3/libraries/RServe r − On clique sur Save et on ouvre notre Rstudio : Donc notre bibliothèque est bien fonctionnée. E. L’installation de la bibliothèque « biglm » : − Il suffit tout simplement de connecter le R comme un administrateur (c a d sudo R .) − Ecrire : install.packages(‘‘biglm’’) :
  • 96. Page | 96 MINIPROJETBIGDATA Généralement, c’est une installation rapide et simple mais, on trouve un cas très fréquent c’est lorsqu’il indique que le fichier lquadmath n’existe pas !!! La solution tout simplement, est d’ouvrir un terminal et écrire les choses suivantes : 1. Entrer selon le mode root selon la chose suivante : − $ Sudo su 2. On cherche le chemin du fichier libquadmath : − ldconfig -p | grep libquad* − Il doit afficher les résultats suivants : Donc, Le problème semble être que libquadmath.so.0 est enterré dans le | | /usr/ lib64/libquadmath.so.0 où le compilateur ne peut apparemment pas le voir. 3. La solution est très simple, il suffit de respecter les étapes suivantes : − $cd /usr/lib64. # accéder au chemin suivant − sudo ln -s /usr/lib64/libquadmath.so.0/usr/lib64/libquadmath.so # on permet le compilateur de voir le fichier . Fin