Vous êtes sur la page 1sur 47

7 Techniques et outils d'analyse des données

7.1 Introduction aux techniques d'analyse de données

Dans cette section, nous allons examiner les différents types d'analyses que vous pouvez effectuer une fois
que vous avez identifié le problème ou l'opportunité commerciale, développé une hypothèse et collecté des
données pertinentes. Alors que la capacité de traitement continue d'augmenter, il a ouvert la porte à un
large éventail d'algorithmes et de techniques de modélisation avancés que les organisations peuvent
utiliser pour produire des informations précieuses à partir des données.

Nous avons une grande variété de problèmes commerciaux impliquant l'analyse prédictive, la gestion des
données, l'échantillonnage statistique et la conception des enquêtes. Certains sont assez simples, et
beaucoup ont été complexes, à travers un large éventail de problèmes commerciaux dans des secteurs tels
que les soins de santé, les services financiers, le commerce de détail et la consommation.

Nous discuterons d'une série de techniques analytiques et de leur utilisation dans le monde réel.

Nous allons commencer par parler de l'analyse par grappes(L'analyse de cluster). L'analyse de cluster
consiste à regrouper un ensemble d'objets de manière à ce que les objets du même groupe ou cluster soient
plus similaires les uns aux autres que ceux des autres clusters. L'analyse de grappes est souvent utilisée
dans les études de marché lorsque vous travaillez avec des données de groupes de discussion et
d'enquêtes. Une analyse en grappes peut être utilisée pour segmenter une population de consommateurs
en groupes de marché afin de mieux comprendre les relations entre les différents groupes de
consommateurs. Cette analyse peut aider à répondre à des questions telles que, qui sont mes clients cibles?
Comment sont-ils différenciés sur les caractéristiques comportementales, psychographiques et
démographiques? Y a-t-il des groupes qui ont des attributs similaires afin que les produits, services, offres
de prix puissent être utilisés pour personnaliser les segments?
Passons maintenant à l'analyse de l'arbre de décision(Arbre descriptive analytique). Un outil d'aide à la
décision qui utilise un graphique arborescent des décisions et de leurs conséquences possibles. Y compris
les résultats des événements fortuits, le coût des ressources et l'utilité. L'analyse de l'arbre de décision est
souvent utilisée pour aider les professionnels de la santé à envisager la variation des traitements ainsi que
les coûts et les probabilités de réussite de chacun. Par exemple, les prestataires de soins de santé peuvent
utiliser cette analyse pour évaluer les options et fournir des traitements plus rentables qui minimisent le
risque de réadmission à l'hôpital. Pour analyser un grand nombre de variables dépendantes et
indépendantes , nous pourrions utiliser l'analyse factorielle. Ce type d'analyse peut aider à détecter les
aspects des variables indépendantes qui sont liés aux variables dépendantes. Lorsque nous recevons les
données, des ensembles assez larges, ce qui signifie qu'ils comportaient plus de variables dans les
observations ou les enregistrements. Nous avons besoin d'un moyen d'identifier l'ensemble de variables ou
d'inducteurs de base qui permettront d'obtenir des informations significatives.

L'analyse factorielle peut aider à identifier ce sous-ensemble réduit de variables, ce qui signifie que
certaines de ces variables représentent des relations similaires à celles qui ne sont pas incluses, mais peut-
être d'une manière plus forte.

Machine learning est un type d'intelligence artificielle qui fournit aux ordinateurs la possibilité
d'apprendre sans être explicitement programmé pour le faire. Pour les détaillants avant-gardistes, les
possibilités de Machine learning avancé sont illimitées. Prenons par exemple une entreprise qui essaie de
prédire ce que ses clients vont acheter au printemps prochain. Les algorithmes de Machine learning
peuvent déterminer la disponibilité des matériaux auprès de fournisseurs externes, incorporer divers
scénarios de chaîne d'approvisionnement. Et recommander la quantité, le prix, le placement en rayon et le
canal de marketing qui atteindraient le mieux le consommateur cible dans une zone géographique
particulière.

L'analyse de régression est un processus statistique permettant d'estimer les relations entre une variable
dépendante et une ou plusieurs variables indépendantes. Les variables sont les éléments d'information. Ce
type d'analyse vous aide à comprendre comment la valeur d'une variable dépendante change lorsque l'une
des variables indépendantes change Par exemple, une grande compagnie d'assurance souhaite identifier les
caractéristiques, notamment la tranche d'âge, le revenu, le sexe, le niveau d'instruction, etc. Des clients qui
tendent à faire le plus de réclamations automobiles. Ce type d'analyse peut être utilisé pour évaluer le
risque, mais aussi aider à déterminer les prix de divers produits d'assurance automobile.

L'analyse multivariée est l'observation et l'analyse de plus d'une variable de résultat statistique à la fois.
Cela comprend souvent comme première analyse de corrélation, qui peut vous aider à comprendre et à
visualiser les relations entre des paires de variables. La régression multivariée est une technique qui estime
une seule modèle de régression avec plus d'une variable de résultat. Lorsqu'il existe plusieurs variables
prédictives dans un modèle de régression multivariée, le modèle est une régression multiple multivariée.
Pour comprendre les relations d'efficacité des résultats d'un traitement médical particulier, il peut
également être nécessaire de comprendre variables confondantes telles que l'âge, le poids, le sexe ou
d'autres médicaments que le patient peut recevoir. Il peut y avoir plusieurs façons d'évaluer les résultats et
donc, plus d'une variable dépendante et de plusieurs variables indépendantes.
L'analyse de segmentation divise une large catégorie en sous-ensembles qui ont ou sont perçus comme
ayant des caractéristiques, des besoins, des intérêts ou des priorités communs. Souvent, l'analyse de
segmentation est utilisée pour mieux comprendre les besoins des clients en plongeant un grand nombre de
personnes en petits groupes sur la base d'un schéma logique. La segmentation fournit un mécanisme
pratique autour duquel développer des produits, construire des programmes et exécuter des tactiques
marketing.


Exemple 7.1 - 1:

Imaginez qu'une banque développe une stratégie pour devenir un leader des paiements mobiles et
des services bancaires mobiles.

Traditionnellement, la pénétration des produits était portée par les chargés de clientèle de la banque
et ses succursales. L'analyse de la segmentation pouvait aider la banque à gagner des parts de
marché en identifiant les segments de clientèle clés et en élaborant des recommandations de
produits pour ceux qui sont plus susceptibles d'utiliser les services bancaires mobiles. identifier et
catégoriser les opinions exprimées dans un morceau de texte pour déterminer si l'attitude de
l'écrivain envers un sujet ou une question est positive, négative ou neutre. Cette analyse repose
souvent sur le traitement du langage naturel ou PNL, qui est utilisé pour effectuer l'exploration de
données sur Internet.

Cela permet aux entreprises de mieux comprendre ce que leurs consommateurs disent de leurs offres
de produits et d'ajuster les stratégies lorsque cela est possible pour améliorer le sentiment des
clients.
La catégorisation des informations extraites d'Internet peut ensuite être utilisée pour développer des
modèles.

L'analyse des séries chronologiques(Time series) peut être utilisée pour concevoir une méthodologie pour
identifier les facteurs affectant la demande des passagers des compagnies aériennes sur les routes en tirant
parti des données macroéconomiques, démographiques et autres données externes, au niveau local,
étatique et national. De tels modèles peuvent être développés pour produire une route niveau de prévision
de la demande totale de voyages en avion. Aide à l'optimisation de la planification des itinéraires et des
capacités et à l'identification de nouveaux itinéraires pour l'entrée sur le marché. L'analyse des séries
chronologiques comprend des méthodes d'analyse des données collectées au fil du temps pour extraire des
statistiques significatives. Cours des actions, volumes de ventes, taux d'intérêt et les mesures de qualité
sont tous des exemples typiques. En raison de cette nature séquentielle des données, des techniques
statistiques spéciales tenant compte de la nature dynamique des données sont requises.

7.2 Explorer les outils d'analyse de données

La demande de data scientist dans chaque industrie augmente considérablement. Pour le développement
de chaque entreprise, il est nécessaire d'évaluer les données que vous collectez. Et les data scientistes ont
besoin à la fois des bons outils et des compétences parfaites pour vous permettre de produire de meilleurs
résultats avec vos informations.
D'après le rapport Forbes, la Data Science est le meilleur emploi aux États-Unis au cours des trois dernières
années consécutives. De plus, selon une étude IBM, la demande de Data Scientist augmentera de 28% d'ici
2020, avec près de trois millions de postes vacants pour professionnels de la science des données.

La science des données est un concept qui rassemble les statistiques, l'analyse des données et leurs
stratégies connexes pour comprendre et analyser les merveilles réelles avec les données. Elle fait appel à
des théories et des techniques issues de divers domaines dans les vastes régions de la statistique, des
mathématiques, de l'informatique et des sciences de l'information.

Avec l'avancement de l'apprentissage automatique, la science des données gagne en popularité. Pour
comprendre et devenir data scientist, vous devez apprendre au moins un langage de programmation (même
si en savoir plus est avantageux pour les demandeurs d'emploi). Vous avez plusieurs options pour choisissez
parmi.

La science des données est un domaine passionnant dans lequel travailler, combinant des compétences
quantitatives et des statistiques avancées avec des capacités de programmation dans le monde réel.

Voyons maintenant quelques principaux langages de programmation qu'un scientifique des données devrait
maîtriser en 2020.

7.2.1 SQL

L'acronyme SQL signifie de Structured Query Language . Il s'agit du langage standard pour de

nombreux systèmes de gestion de bases de données relationnelles et de manipulation de données. SQL est
souvent utilisé pour interroger, insérer, mettre à jour et modifier des données. un niveau de base SQL est
une méthode de communication entre vous et la base de données. L'une des grandes choses à propos de
SQL est qu'il est composé d'instructions qui sont des mots descriptifs. En d'autres termes, la plupart des
commandes utilisées dans SQL sont assez faciles à interpréter par rapport à de nombreux autres langages
informatiques. Cela rend SQL, en tant que langage, très facile à comprendre et à apprendre. Cependant, il
est important de comprendre que SQL est un langage non procédural. Cela signifie que vous ne pourrez pas
écrire d'applications complètes avec lui, mais ce que vous pouvez faire est d'interagir et de communiquer
avec les données. Cela rend le langage relativement simple, mais aussi très puissant. Lorsque vous pensez à
SQL, il vous suffit de penser aux données.

SQL est une question de données. SQL est vraiment utilisé pour trois choses. Il est utilisé pour lire et
récupérer des données, donc les données sont souvent stockées dans une base de données, et vous voulez
les récupérer ou les lire. Et vous pouvez utiliser SQL comme un moyen de être un traducteur pour cela. SQL
est également utilisé comme un moyen d'écrire des données dans une base de données. Donc, si vous
devez écrire des données dans une table ou insérer de nouvelles données, vous pouvez utiliser SQL comme
moyen de le faire. Et enfin, c'est utilisé pour mettre à jour et insérer de nouvelles données. Comme vous
pouvez le voir, SQL a une conception très simple, à droite. Il est très contenu dans ce qu'il est capable de
faire, à savoir lire, écrire et mettre à jour des données. beaucoup de gens qui sont capables d'utiliser ce
langage.

Nous avons besoin d'un moyen d'aller chercher ces données. SQL est vraiment fondamental dans la science
des données parce que vous ne pouvez vraiment pas commencer à construire des modèles ou faire des
prédictions avant d'avoir les données. SQL est le moyen d'aller dans une base de données et d'obtenir ceci
Les scientifiques des données peuvent également l'utiliser pour créer leur propre table ou environnement
de test. Supposons que vous ayez construit un modèle et que vous souhaitiez le déployer et que vous
souhaitiez l'ajouter à nouveau dans la table. Vous devrez peut-être créer le vôtre. table ou environnement
de test pour ajouter cela. Une chose qui n'est pas unique avec le scientifique des données, ou d'autres
personnes utilisant SQL, est que souvent vous combinez plusieurs tables ensemble et beaucoup de fois cela
conduit à des requêtes un peu plus complexes. écrit pour l'analyse. Les scientifiques des données, bien que
la principale façon d'utiliser SQL est vraiment de pouvoir récupérer leurs données pour analyse, ils
pourraient faire une petite partie de l'analyse en utilisant SQL. Cependant, la principale chose qu'ils
utilisent SQL est pour la récupération de données. Encore une fois, vous pouvez penser à SQL comme
interprète entre vous et la base de données. La façon dont vous écrivez une partie de la syntaxe pour SQL
dépendra du système de gestion de base de données relationnelle avec lequel vous interagissez. En
étendant notre analogie, vous pouvez considérer cela comme l'accent ou peut-être comme le dialecte. SQL
est capable de le traduire pour vous, mais parfois vous devez le modifier un peu en fonction du système de
gestion de base de données que vous utilisez. Ici, j'ai énuméré quelques-uns des plus populaires, SQL
Server, PostgreSQL, MySQL.

7.2.2 Python

Dans cette section, nous allons examiner le rôle que Python joue dans la science

des données et l'analyse. Python est un langage de programmation open source à usage général qui peut
être utilisé pour tout, de la création d'applications Web et de programmes d'entreprise à l'analyse sur de
grandes quantités Python est populaire car il est librement disponible à utiliser, met l'accent sur la lisibilité
du code, et il est facile pour les nouveaux arrivants d'apprendre. En outre, il est populaire en raison de sa
convivialité et de sa capacité à s'intégrer à une variété de programmes, d'outils et sites Web. Python est
devenu l'un des langages les plus populaires pour la gestion et l'analyse des données. Aujourd'hui, Python
est largement utilisé par les startups et les sociétés de technologie pour intégrer des analyses dans leurs
produits, et par les scientifiques des données pour gérer et analyser rapidement de grandes quantités de
données. Python dispose d'un ensemble d'outils appelé Python Data Analytics Stack qui répondent à
chaque étape du flux de travail d'analyse. Ces outils sont assemblés dans des bibliothèques Python, qui
sont des collections de morue e qui sont faciles à utiliser. Bien que les noms de ces bibliothèques
spécifiques puissent changer, voici quelques exemples de bibliothèques courantes pour la science des
données. Pandas pour l'importation et l'évaluation des données, y compris l'analyse des contours et le
nettoyage des données, ainsi que des statistiques récapitulatives. NumPY et SciPy pour effectuer des
opérations matricielles, mathématiques et scientifiques extrêmement rapides. Statsmodels pour adapter un
large éventail de modèles statistiques aux données. Scikit-Learn en appliquant des techniques
d'apprentissage automatique telles que le clustering, la réduction de la dimensionnalité, les forêts
aléatoires et la régression logistique. Matplotlib, Seaborn et Bokeh pour produire des visuels attrayants. Et
enfin, Apache Spark, pour traiter des données à grande échelle sur un cluster d'ordinateurs. En plus de la
science des données normale et des données numériques, Python possède des bibliothèques qui peuvent
également gérer des données non structurées comme du texte et des images. Pour par exemple, NLTK,
Spacy et Gensim traitent les données de texte. OpenCV manipule et analyse les images. BeautifulSoup et
Scrapy font le web scraping e Python peut interagir avec des outils comme Caffe pour utiliser des
techniques d'apprentissage approfondi sur de puissantes machines compatibles GPU pour un apprentissage
automatique de pointe sur les images, le son et le texte. Et Flask ou Django pour la création de sites Web et
de services Web pouvant intégrer des modèles d'apprentissage automatique accessible via Internet.

Nous avons décrit certaines des capacités de Python, mais la grande question est, pourquoi Python?

Notre modèle et nos capacités statistiques sont plus étendus, plus avancés. Lorsque Python brille vraiment,
c'est lorsque les données ne sont pas structurées ou que les analyses doivent être intégrées dans d'autres
programmes ou applications. Parce que Python est un langage de programmation à usage général, il était
facile pour construire des bibliothèques extrêmement efficaces pour traiter toutes sortes de données et
interagir avec la plupart des principaux outils de Big Data tels que Hadoop ou Apache Spark. Nous évaluons
quelles données principales outil à utiliser en fonction des besoins du client. Je vais souligner quelques
exemples d'utilisation de Python. Premièrement, il existe des projets qui utilisent le traitement du langage
naturel. Par exemple, vous avez entendu décrire notre travail pour aider un grand client bancaire à
comprendre les commentaires qu'il a reçus de ses clients via les canaux de support client, ainsi que les
médias sociaux. Nous utilisons Python pour gratter les données, les analyser et les comprendre, puis décrire
les cu le sentiment de stomer qui y règne est de mieux prioriser les problèmes que la banque doit résoudre
pour améliorer la satisfaction de la clientèle.

C'était un bon exemple de la raison pour laquelle Python a été choisi, non seulement parce qu'il nous
permettait de traiter toutes les données à volume élevé, mais aussi parce que le client utilisait Python et
voulait du code déployable qui pouvait être conservé après la fin de l'engagement. Finalement, nous avons
pu leur fournir des modèles pour prévoir les défaillances de la pompe deux jours avant une défaillance
réelle. Assez de temps pour effectuer la maintenance et économiser sur les remplacements coûteux de la
pompe. Parfois, le choix de l'outil d'analyse approprié peut sembler intimidant car il y a tellement
d'options. Python est un excellent choix car il gère de nombreux cas d'utilisation de la science des données,
des simples statistiques descriptives aux modèles statistiques, en passant par l'apprentissage automatique
complexe et l'informatique distribuée intégrée dans des applications Web dynamiques. Python est facile à
utiliser car il a été conçu pour être facile pour les programmeurs. afin que la courbe d'apprentissage ne soit
pas trop abrupte. Si vous ne l'avez pas encore essayé, cela vaut la peine d'être exploré. Dans cette section,
nous avons discuté du rôle de Python dans les données et l'analyse Python est gratuit, facile à utiliser,
rapide et utile pour les tâches d'analyse de données simples et complexes.

7.2.3 R, Qu'est-ce que le CRAN?

R est à la fois un langage de programmation et un environnement, principalement axé sur

l'analyse statistique et le graphisme. Ce sera l'un des principaux outils que vous utiliserez dans ce cours et
les suivants.

R est téléchargé à partir du réseau complet d'archives R, ou CRAN, pourquoi devriez-vous utiliser R?

1. Sa popularité

R devient rapidement le langage standard pour l'analyse statistique. Cela fait de R un excellent
langage à apprendre car plus un logiciel est populaire, plus la nouvelle fonctionnalité est développée
rapidement, plus elle devient puissante et meilleur est le support! comme vous pouvez le voir dans
le graphique ci-dessous, sachant que R est l'une des cinq langues les plus demandées dans les offres
d'emploi de data scientist.

2. Sa communauté

Et la raison pour laquelle la fonctionnalité de R est si étendue est la communauté qui s'est construite
autour de R. Les individus se sont réunis pour créer des «packages» qui ajoutent à la fonctionnalité
de R-et plus sont développés chaque jour!

Surtout pour les gens qui débutent avec R, sa communauté est un énorme avantage - en raison de sa
popularité, il existe plusieurs forums qui ont des pages et des pages dédiées à la résolution des
problèmes R. Nous en avons parlé dans la leçon Obtenir de l'aide; ces forums sont idéal à la fois
pour trouver d'autres personnes qui ont eu le même problème que vous et pour publier vos propres
nouveaux problèmes.

7.3 Explorer les outils de visualisation

7.3.1 Pouvoir de la visualisation

Dans cette section, nous allons parler de la visualisation des données. Les données et l'analyse visent à
donner vie aux défis des clients afin que nous puissions les surmonter en prenant des données, qu'elles
soient structurées ou non structurées, et en les transformant en informations et informations utilisables. les
données et les analyses dans le monde n'auront pas d'importance si elles ne peuvent pas être utilisées par
un utilisateur final ou un décideur. Pensez au cadre de données et d'analyse dont nous avons parlé plus tôt
dans le cours. Une fois que vous avez collecté les données et effectué votre analyse , vous devez être en
mesure de présenter ces données d'une manière qui a du sens pour votre utilisateur final. En d'autres
termes, vous devez visualiser les données.

Nous illustrons les données avec des graphiques et communiquons les informations de manière claire et
efficace aux utilisateurs. Ce n'est pas nouveau. Pendant des siècles, les gens se sont appuyés sur des
représentations visuelles telles que des graphiques et des cartes pour comprendre les informations plus
facilement et plus rapidement. À mesure que de plus en plus de données sont collectées et analysées, les
décideurs à tous les niveaux de l'organisation se félicitent des logiciels de visualisation de données qui leur
permettent de voir visuellement les résultats analytiques. Ils les aident à trouver la pertinence parmi des
millions de variables, à communiquer des concepts et des hypothèses à d'autres et même à prédire l'avenir.

La visualisation est importante car le cerveau traite les informations visuelles plus rapidement. Les
utilisateurs peuvent repérer des modèles ou des tendances qui ne sont pas évidents dans une structure
plate. Les informations peuvent être interprétées par n'importe quel public.

La prise de décision est plus rapide et moins coûteuse. Autrement dit, la visualisation des données n'est
qu'une technique qui aide tout le monde à voir et à comprendre l'analyse en cours. Par exemple, supposons
que vous souhaitiez examiner les comportements des clients en fonction de leur emplacement. à travers
des tableaux et des tableaux de segments de clients pour identifier différents comportements par codes
postaux. Il faudrait beaucoup de temps pour trier toutes ces analyses et données. Si vous tracez ces
données sur une carte et localisez les magasins ou les emplacements où se produisent des comportements
spécifiques des clients , vous pouvez l'utiliser pour développer des stratégies qui attirent des clients
spécifiques vers des emplacements spécifiques.

Dans les prochaines sections, vous pourrez voir quelques exemples de la façon dont nous utilisons les outils
de visualisation des données pour résoudre de vrais problèmes commerciaux.

7.3.2 Tableau (et Tableau Public)

Tableau propose diverses options, notamment une application de bureau, un

serveur et des versions en ligne hébergées, ainsi qu'une option publique gratuite. Des centaines d'options
d'importation de données sont disponibles, des fichiers CSV aux données Google Ads et Analytics aux
données Salesforce.

Les options de sortie incluent plusieurs formats de graphique ainsi que la capacité de cartographie. Cela
signifie que les concepteurs peuvent créer des cartes codées par couleur qui présentent des données
géographiquement importantes dans un format beaucoup plus facile à digérer qu'un tableau ou un
graphique ne pourrait jamais l'être.

La version publique de Tableau est gratuite pour tous ceux qui recherchent un moyen puissant de créer des
visualisations de données qui peuvent être utilisées dans divers contextes. Des journalistes aux accros de la
politique à ceux qui veulent simplement quantifier les données de leur propre vie, il sont des tonnes
d'utilisations potentielles pour Tableau Public . Ils ont une vaste galerie d'infographies et de visualisations
qui ont été créées avec la version publique pour servir d'inspiration à ceux qui souhaitent créer la leur.

Voici quelques exemples:


7.3.3 Datawrapper

Datawrapper a été créé spécifiquement pour ajouter des graphiques et des cartes aux

actualités. Les graphiques et les cartes créés sont interactifs et conçus pour être intégrés sur des sites Web
d'actualités. Cependant, leurs sources de données sont limitées, la méthode principale étant de copier et
coller des données dans l'outil.

Une fois les données importées, les graphiques peuvent être créés en un seul clic. Leurs types de
visualisation incluent les graphiques à colonnes, à lignes et à barres, les beignets électoraux, les graphiques
à secteurs, les diagrammes de dispersion, les cartes de choroplèthes et de symboles et les cartes de
localisation, entre autres. Les visualisations terminées rappellent ceux vus sur des sites comme le New York
Times ou le Boston Globe. En fait, leurs cartes sont utilisées par des publications comme Mother Jones,
Fortune et The Times.

Voici quelques exemples:

7.3.4 D3.js

D3.js est une bibliothèque JavaScript pour manipuler des documents à l'aide de données. D3.js

nécessite au moins une certaine connaissance de JS, bien qu'il existe des applications qui permettent aux
utilisateurs non programmeurs d'utiliser la bibliothèque. Ces applications incluent NVD3, qui propose des
graphiques réutilisables pour D3.js; Plotly’s Chart Studio, qui permet également aux concepteurs de créer
WebGL et d’autres graphiques; et Ember Charts, qui utilise également le cadre Ember.js.

Voici quelques exemples:


7.3.5 Google Charts

Google Charts est un outil de visualisation de données puissant et gratuit spécialement

conçu pour créer des graphiques interactifs à intégrer en ligne. Il fonctionne avec des données dynamiques
et les sorties sont basées uniquement sur HTML5 et SVG, de sorte qu'elles fonctionnent dans les navigateurs
sans utiliser de plugins supplémentaires. Données les sources incluent Google Spreadsheets, Google Fusion
Tables, Salesforce et d'autres bases de données SQL.
Il existe une variété de types de graphiques, notamment des cartes, des diagrammes de dispersion, des
graphiques à colonnes et à barres, des histogrammes, des graphiques à secteurs, des graphiques circulaires,
des tracés, des chronologies, des jauges et bien d'autres. Ces graphiques peuvent être entièrement
personnalisés, via une simple modification CSS.

Voici quelques exemples:


8 Une brève introduction à SQL

Pourquoi devrions-nous nous préoccuper de SQL? Les entreprises doivent garder une trace de beaucoup de
données, et la seule façon pratique de le faire est de stocker les données est un certain type de base de
données. Si vous devenez analyste de données pour l'entreprise monde, d'une manière ou d'une autre,
vous allez devoir trouver comment extraire des données de ces bases de données afin de faire tout type
d'analyse. Ce chapitre est conçu pour vous aider à apprendre de haut niveau comment le faire et nous
aurons un module dédié qui vous guidera plus en détail dans le monde SQL.

Dans de nombreuses entreprises axées sur la technologie, la seule façon d'extraire des données d'une base
de données est d'écrire vos propres requêtes SQL, qui sont des lignes structurées de code informatique qui
extraient des données. Dans d'autres entreprises plus grandes et plus traditionnelles, il y a des personnes
dans l'entreprise qui pourraient extraire les données pour vous, mais vous devez faire une demande
formelle pour qu'elles écrivent, exécutent et interrogent. Et cela peut prendre des jours ou des semaines
pour qu'elles répondent à votre demande, surtout si beaucoup d'autres personnes demandent également
des requêtes. Pour cette raison, les entreprises sont très désireuses d'embaucher des analystes qui peuvent
non seulement analyser les données, mais qui savent comment obtenir les données en premier lieu.

Nous avons mentionné plus tôt que SQL est le langage utilisé pour extraire des données de types
spécifiques de bases de données appelées bases de données relationnelles. Les bases de données
relationnelles sont la référence pour les bases de données qui stockent des données commerciales
hautement organisées et structurées - base de données relationnelle . Il existe également de
nouvelles classes de bases de données spécialement conçues pour les données qui sont collectées à un
rythme extrêmement rapide, telles que les données GPS ou biocapteurs, ou les données non structurées qui
ne correspondent pas bien aux formats hautement prescrits, tels que les tweets ou les textes. Toutefois,
bien que ces bases de données soient certainement susceptibles de gagner en popularité à l'avenir, elles ne
représentent actuellement qu'une très petite fraction du marché des bases de données.

Dans ce chapitre nous présenterons de manière brève à MySQL, qui est une marque ou une plate-forme
particulière de base de données relationnelle. Il existe de nombreuses plates-formes de base de données
relationnelles, notamment Oracle, Microsoft, SQL Server, DB2, SQLite, Microsoft Access et PostgreSQL. Nous
avons choisi de concentrer sur MySQL.

8.1 Qu'est-ce que c'est MySQL?


Résumé: Cette section vous aide à répondre à la question: qu'est-ce que MySQL? Et donnez-vous les
raisons pour lesquelles MySQL est la base de données open source la plus populaire au monde.

Pour comprendre MySQL, vous devez d'abord comprendre la base de données et SQL. Si vous connaissez
déjà la base de données et SQL, vous pouvez passer à la section Qu'est-ce que MySQL.
8.1.1 Introduction à la base de données

Vous traitez les données tous les jours.

Lorsque vous souhaitez écouter vos chansons préférées, vous ouvrez votre playlist depuis votre
smartphone. Dans ce cas, la playlist est une base de données.

Lorsque vous prenez une photo et la téléchargez sur votre compte sur un réseau social comme
Facebook, votre galerie de photos est une base de données.

Lorsque vous naviguez sur un site de commerce électronique pour acheter des chaussures, des
vêtements, etc., vous utilisez la base de données du panier.

Les bases de données sont partout. Alors qu'est-ce qu'une base de données? Par définition, une base de
données n'est qu'une collection structurée de données .

Les données relatives les unes aux autres par nature, par exemple, un produit appartenaient à une catégorie
de produits et associées à plusieurs balises. Par conséquent, nous utilisons le terme base de données
relationnelle.

Dans la base de données relationnelle, nous modélisons des données comme les produits, les catégories,
les balises, etc., à l'aide de tableaux. Un tableau contient des colonnes et des lignes. C'est comme une
feuille de calcul.

Une table peut être liée à une autre table à l'aide d'une relation, par exemple, des relations un-à-un et un-à-
plusieurs.

Parce que nous traitons une quantité importante de données, nous avons besoin d'un moyen de définir les
bases de données, les tables, etc., et de traiter les données plus efficacement. De plus, nous voulons
transformer les données en informations.

Et c'est là que SQL vient jouer.

8.1.2 SQL - le langage de la base de données relationnelle


SQL signifie le langage de requête structuré. ( structured query language en anglais.)

SQL est le langage standardisé utilisé pour accéder à la base de données.

ANSI / SQL définit la norme SQL. La version actuelle de SQL est SQL: 2016. Chaque fois que nous nous
référons à la norme SQL, nous entendons la version SQL actuelle.

SQL contient trois parties:

1. Le langage de définition des données comprend des instructions qui vous aident à définir la base de
données et ses objets, par exemple, les tables, les vues, les déclencheurs, les procédures stockées, etc.
2. Le langage de manipulation des données contient des instructions qui vous permettent de mettre à
jour et d'interroger des données.
3. Le langage de contrôle des données vous permet d'accorder les autorisations à un utilisateur pour
accéder à des données spécifiques dans la base de données.

8.1.3 MySQL

My est le nom de la fille du co-fondateur de MySQL, Monty Widenius.

Le nom de MySQL est la combinaison de My et SQL, MySQL.

MySQL est un système de gestion de base de données qui vous permet de gérer des bases de données
relationnelles. Il s'agit d'un logiciel open source soutenu par Oracle. Cela signifie que vous pouvez utiliser
MySQL sans payer un sou. De plus, si vous le souhaitez, vous pouvez modifier son code source en fonction
de vos besoins.

Même si MySQL est un logiciel open source, vous pouvez acheter une version de licence commerciale auprès
d'Oracle pour obtenir des services d'assistance premium.

MySQL est assez facile à maîtriser par rapport à d'autres logiciels de base de données comme Oracle
Database ou Microsoft SQL Server.

MySQL peut fonctionner sur différentes plateformes UNIX, Linux, Windows, etc. Vous pouvez l'installer sur
un serveur ou même sur un bureau. De plus, MySQL est fiable, évolutif et rapide.

La façon officielle de prononcer MySQL est My Ess Que Ell, pas My Sequel. Cependant, vous pouvez le
prononcer comme bon vous semble, peu importe?

Si vous développez des sites Web ou des applications Web, MySQL est un bon choix. MySQL est un
composant essentiel de la pile LAMP, qui comprend Linux, Apache, MySQL et PHP.

8.2 Installez MySQL

8.2.1 Télécharger MySQL Installer

Si vous souhaitez installer MySQL sur l'environnement Windows, l'utilisation du programme d'installation de
MySQL est le moyen le plus simple. Le programme d'installation de MySQL vous fournit un assistant facile à
utiliser qui vous aide à installer MySQL avec les composants suivants:

Serveur MySQL
Tous les connecteurs disponibles
MySQL Workbench avec des exemples de modèles de données

Notificateur MySQL
Outils pour Excel et Microsoft Visual Studio

Exemples de bases de données MySQL


Documentation MySQL

Pour télécharger le programme d'installation de MySQL, accédez au lien suivant http://dev.mysql.com/down


loads/installer/ . Il existe deux fichiers d'installation:
Si vous vous connectez à Internet pendant l'installation de MySQL, vous pouvez choisir la version
d'installation en ligne mysql-installer-web-community- version .exe.

Si vous souhaitez installer MySQL hors ligne, vous pouvez télécharger le fichier mysql-installer-
community- version .exe.

8.2.2 Installer MySQL via MySQL Installer

Pour installer MySQL à l'aide du programme d'installation MySQL, double-cliquez sur le fichier d'installation
MySQL et suivez les étapes ci-dessous:

Etape01 : Exécuter le programme d'installation


Etape02 : Choisissez la configuration par défaut

Etape03 : Vérification des exigences


Etape04 : Progression de l'installation: MySQL Installer télécharge tous les produits sélectionnés. Cela
prendra un certain temps, selon les produits que vous avez sélectionnés et la vitesse de votre connexion
Internet.

Etape05 : Présentation de la configuration


Etape05.1 : Mot de passe à configurer - MySQL Root Password
Etape06 : Configuratoin Production
Etape07 : Configuratoin Rooter

Etape08 : Connecter au serveur (En utilisant le mot de passe confituré en étape 05.1)
Etape09 : Appliquer les configurations
Etape10 : Installation terminée
8.2.3 Se connecter au serveur MySQL

Une fois le serveur MySQL installé, vous pouvez vous y connecter à l'aide de n'importe quel programme
client tel que le client de ligne de commande mysql et le plan de travail MySQL.

8.2.3.1 Se connecter à MySQL à l'aide du client de ligne de commande mysql

MySQL est un programme client en ligne de commande qui vous permet d'interagir avec MySQL en mode
interactif et non interactif.

Le client de ligne de commande mysql se trouve généralement dans le répertoire bin du dossier
d'installation de MySQL.

C:\Program Files\MySQL\MySQL Server 8.0\bin

Ouvrir l'invite de commande


Taper

> cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"

Dans l'invite de commande

Pour appeler le programme mysql, il vous suffit de naviguer dans le répertoire bin du dossier d'installation
de MySQL
Et de taper:

> mysql -u root -p

## commentaire ##
-u root signifie que vous vous connectez au serveur MySQL en utilisant la racine
du compte utilisateur.
-p demande à mysql de demander un mot de passe.

Entrez le mot de passe que vous avez défini en étape 05.1 de section 5.2.2
Si tout va bien, vous vous connecterez au serveur MySQL avec la commande suivante:

Pour afficher les bases de données sur le serveur actuel, vous utilisez l'instruction SHOW DATABASES:

mysql>show databases;
8.2.3.2 Se connecter à MySQL à l'aide de MySQL Workbench

Etape01 : Lancez MySQL Workbench

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\MySQL
Vous pouvez vous connecter à un serveur MySQL à l'aide du menu Base de données> Se connecter à la base
de données… ou cliquer sur le bouton + qui se trouve à côté des connexions MySQL.

Cliquez simplement sur le bouton + à côté des connexions MySQL pour continuer.
Etape02 : Saisissez le nom de la connexion, par exemple Localhost. Vous pouvez le nommer comme vous
voulez. Par défaut, le nom d'utilisateur est root. Si vous utilisez un autre compte utilisateur, vous pouvez le
modifier dans la zone de texte Nom d'utilisateur.

Etape03 : Cliquez sur le bouton Store in Vault ... pour entrer le mot de passe du compte d'utilisateur
fourni. Une fenêtre s'affiche. Vous entrez le mot de passe et cliquez sur le bouton OK.

Etape04 : Cliquez sur le bouton Tester la connexion pour tester si la connexion au serveur MySQL a réussi
ou non. Cliquez ensuite sur le bouton OK si la connexion est établie avec succès.
Etape05 : Cliquez sur le bouton OK pour enregistrer la connexion.

Etape05 : Cliquez sur la connexion nouvellement créée sous Connexions MySQL pour vous connecter au
serveur MySQL:
Etape 07 : Affichage de MySQL Workbench avec les schémas actuels et un volet pour entrer des requêtes:
8.2.4 Exemple de base de données MySQL

Nous utilisons la base de données classicmodels comme exemple de base de données MySQL pour vous
aider à travailler avec MySQL rapidement et efficacement. La base de données classicmodels est un
détaillant de modèles réduits de base de données de voitures classiques. Il contient des données
commerciales typiques telles que les clients, les produits, les commandes client, les lignes de commande
client, etc.

8.2.4.1 Télécharger la base de données exemple MySQL

Vous pouvez télécharger l'exemple de base de données MySQL via le lien suivant:
https://sp.mysqltutorial.org/wp-content/uploads/2018/03/mysqlsampledatabase.zip

Le fichier téléchargé est au format ZIP, vous avez donc besoin d'un programme zip pour le décompresser.
Vous pouvez télécharger un programme zip gratuit sur www.7-zip.org

8.2.4.2 Comment charger l'exemple de base de données dans le serveur MySQL

Etape 01 : Décompressez le fichier téléchargé ( mysqlsampledatabase ) dans un dossier temporaire. Vous


pouvez utiliser n'importe quel dossier de votre choix. Pour simplifier, nous allons décompresser le fichier
dans le dossier:

C:\Users\mayn\Desktop\mysqlsampledatabase

Etape 02 : Connectez-vous au serveur MySQL

> mysql -u root -p

Etape 03 : Utilisez la commande source pour charger des données dans le serveur MySQL

mysql> source C:\Users\mayn\Desktop\mysqlsampledatabase\mysqlsampledatabase.sql


Etape 04 : Utilisez la commande SHOW DATABASES pour répertorier toutes les bases de données du
serveur actuel

8.3 Requête de données

L'exemple de schéma de base de données classicmodels se compose des tableaux suivants:

Customers: stocke les données des clients.


Products: stocke une liste de modèles réduits de voitures.

ProductLines: stocke une liste des catégories de lignes de produits.

Orders: stocke les commandes client passées par les clients.


OrderDetails: stocke les lignes de commande client pour chaque commande client.

Payments: stocke les paiements effectués par les clients en fonction de leurs comptes.

Employees: stocke toutes les informations sur les employés ainsi que la structure de l'organisation,

par exemple, qui relève de qui.


Offices: stocke les données du bureau des ventes.

Il peut-être représenté par un diagramme de Entité-Relation suivant. (Nous détaillerons ce diagramme dans
le module SQL)
Après avoir décompressé le fichier sampledatabase.zip, vous avez chargé l'exemple de base de données
dans le serveur de base de données MySQL. Vous pouvez maintenant le tester.

8.3.1 Utiliser la base de données classicmodels

> USE classicmodels;

Fondamentalement, cette instruction bascule la base de données actuelle vers classicmodels


8.3.2 Interroger/Traiter les données avec MySQL Workbench

Lancez le MySQL Workbench et sélectionnez la section Schemas . Vous pouvez voir maintenant que ma
connexion MJ-TestLocalHost est entrain d'utiliser la base de données classicmodels .

Le dessin au début du chapitre 5.3 peut-être illustré ici:


8.3.2.1 SELECT

Nous allons commencer par une simple instruction SELECT qui vous permet d'interroger les données
d'une seule table.

L'instruction SELECT vous permet de lire les données d'une ou plusieurs tables. Pour écrire une
instruction SELECT dans MySQL, vous suivez cette syntaxe:

SELECT select_list

FROM table_name;
Tout d'abord, vous démarrez le mot clé SELECT . Il est appelé mot clé car il a une signification

particulière dans MySQL, dans ce cas, SELECT demande à MySQL de récupérer les données.

Ensuite, vous avez de l'espace, puis une liste de colonnes ou d'expressions que vous souhaitez afficher
dans le résultat.

Ensuite, vous avez le mot clé FROM , l'espace et le nom de la table.

Enfin, vous avez un point-virgule ; à la fin de la déclaration.

Nous utiliserons les Customers de la table dans la base de données exemple pour montrer comment
utiliser l'instruction SELECT :

Le tableau des clients comprend 13 colonnes: numéro de client, nom du client, nom du contact, prénom du
contact, numéro, adresse 01, adresse 02, ville, état , code postal, pays, numéro de vente, limite de crédit. Il a
également de nombreuses lignes comme indiqué dans l'image suivante:

8.3.2.1.1 Utilisation de l'instruction SELECT pour récupérer des données à partir d'un exemple de colonne
unique

L'exemple suivant utilise l'instruction SELECT pour sélectionner les noms de tous les clients:

SELECT customerName
FROM customers

Exercice 5.3.2 - 1

Sélectionner les noms de famille de tous les employés

8.3.2.1.2 Utilisation de l'instruction SELECT pour interroger les données de plusieurs colonnes

L'exemple suivant utilise l'instruction SELECT pour obtenir le nom du contact, le prénom du contact et
son numéro:


Exercice 5.3.2 - 2

Sélectionner les noms de famille et les prénoms de tous les employés


Si vous souhaitez récupérer des données de toutes les colonnes de la table des clients, vous pouvez
spécifier tous les noms de colonnes dans la clause SELECT. Ou vous utilisez simplement l'astérisque (*)
comme indiqué dans la requête suivante:

SELECT *
FROM customers

8.3.2.2 ORDER BY

Lorsque vous utilisez l'instruction SELECT pour interroger les données d'une table, le jeu de résultats
n'est pas trié. Cela signifie que les lignes du jeu de résultats peuvent être dans n'importe quel ordre. Pour
trier l'ensemble de résultats, vous ajoutez la clause ORDER BY à l'instruction SELECT . Ce qui suit
illustre la syntaxe de la clause ORDER BY :

SELECT
select_list
FROM
table_name
ORDER BY
column1 [**ASC**|**DESC**],
column2 [**ASC**|**DESC**],
...;

Dans cette syntaxe, vous spécifiez une ou plusieurs colonnes que vous souhaitez trier après la clause ORDER
BY.

ASC signifie ascendant et DESC signifie descendant. Vous utilisez ASC pour trier l'ensemble de résultats
dans l'ordre croissant et DESC pour trier l'ensemble de résultats dans l'ordre décroissant.
8.3.2.2.1 Utilisation de la clause ORDER BY pour trier les valeurs dans un exemple de colonne

La requête suivante utilise la clause ORDER BY pour trier les clients selon les valeurs de la colonne
contactLastName dans l'ordre croissant.

SELECT
contactLastname,
contactFirstname
FROM
customers
ORDER BY
contactLastname;

Si vous souhaitez trier les clients par nom de famille dans l'ordre décroissant, vous utilisez le DESC après
la colonne contactLastname dans la clause ORDER BY comme indiqué dans la requête suivante:

SELECT
contactLastname,
contactFirstname
FROM
customers
ORDER BY
contactLastname DESC;


Exercice 5.3.2 - 3

Sélectionner les noms de famille et les prénoms de tous les employés et tirer ces deux colonnes selon
les valeurs de la colonne lastName dans l'ordre croissant
8.3.2.2.2 Utilisation de la clause ORDER BY pour trier les valeurs dans plusieurs colonnes

Si vous souhaitez trier les clients par nom de famille dans l'ordre décroissant puis par prénom dans l'ordre
croissant, vous spécifiez à la fois DESC et ASC dans la colonne correspondante comme suit:

SELECT
contactLastname,
contactFirstname
FROM
customers
ORDER BY
contactLastname DESC,
contactFirstname ASC;


Exercice 5.3.2 - 4

Sélectionner les noms de famille et les prénoms de tous les employés et tirer ces deux colonnes selon
les valeurs de la colonne lastName dans l'ordre croissant, firstName dans l'ordre décroissant.

8.3.2.2.3 Utilisation de la clause ORDER BY pour trier un jeu de résultats par un exemple d'expression

Consultez le tableau orderdetails suivant de la base de données classicmodels :


La requête suivante sélectionne les éléments de campagne de la commande dans la table orderdetails. Il
calcule le sous-total pour chaque élément de campagne et trie l'ensemble de résultats en fonction du sous-
total.

SELECT
orderNumber,
orderlinenumber,
quantityOrdered * priceEach
FROM
orderdetails
ORDER BY
quantityOrdered * priceEach DESC;


Remarque: Pour rendre la requête plus lisible, vous pouvez affecter à l'expression de la clause SELECT
un alias de colonne et utiliser cet alias de colonne dans la clause ORDER BY, comme indiqué dans la
requête suivante:

SELECT
orderNumber,
orderlinenumber,
quantityOrdered * priceEach AS subtotal
FROM
orderdetails
ORDER BY
subtotal DESC;
8.3.2.2.4 Utilisation ORDER BY pour trier les données à l'aide d'une liste personnalisée

Si nous regardons le tableau order en entier, nous allons constater qu'il y a une colonne status . La clause
ORDER BY vous permet de trier les données à l'aide d'une liste personnalisée à l'aide de la fonction
FIELD () .

SELECT
*
FROM
orders;

Supposons que vous souhaitiez trier les commandes client en fonction de leur statut dans l'ordre suivant:

In Process (En cours)


On Hold (En attente)

Canceled (Annulé)

Resolved (Résolu)
Disputed (Contesté)

Shipped (Expédié)

Pour ce faire, vous pouvez utiliser la fonction FIELD () pour mapper chaque statut de commande à un
nombre et trier le résultat en fonction du résultat de la fonction FIELD () :
SELECT
orderNumber,
status
FROM
orders
ORDER BY
FIELD(status,
'In Process',
'On Hold',
'Cancelled',
'Resolved',
'Disputed',
'Shipped');

L'expression suivante:

FIELD(status, 'In Process', 'On Hold', 'Cancelled', 'Resolved', 'Disputed',


'Shipped');

renvoie l'index du statut dans la liste "En cours", "En attente", "Annulé", "Résolu", "En litige", "Expédié".

Nous détaillerons également notion de l'indice dans le module SQL.

Vous aimerez peut-être aussi