0% ont trouvé ce document utile (0 vote)
38 vues36 pages

Types de Données Et Comment Les Visualiser en Python

Le document traite des types de données en Python, en se concentrant sur les données numériques et catégoriques, ainsi que sur leurs sous-catégories. Il présente également des méthodes de visualisation de ces données à l'aide de bibliothèques Python comme Matplotlib et Seaborn, en utilisant un ensemble de données sur les films IMDB. Les différents types de graphiques, tels que les boxplots, histogrammes et scatterplots, sont discutés pour illustrer les relations et distributions des données.

Transféré par

dataanalystej
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
38 vues36 pages

Types de Données Et Comment Les Visualiser en Python

Le document traite des types de données en Python, en se concentrant sur les données numériques et catégoriques, ainsi que sur leurs sous-catégories. Il présente également des méthodes de visualisation de ces données à l'aide de bibliothèques Python comme Matplotlib et Seaborn, en utilisant un ensemble de données sur les films IMDB. Les différents types de graphiques, tels que les boxplots, histogrammes et scatterplots, sont discutés pour illustrer les relations et distributions des données.

Transféré par

dataanalystej
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

(Mos) Types de données et comment les visualiser en Python

Déc. 13, 2024

Introduction
Les données se présentent sous de nombreuses formes et formes différentes. À titre d'exemple, réfléchissons aux données autour de regarder des
films. Prenez un de mes films préférés, par exemple, Arrivée. Si je me dénotais à quel point je pensais que c'était, je pourrais lui donner un score
d'étoile entre 1 et 5, en l'occurrence 5 étoiles. Je pourrais aussi enregistrer le genre du film, Horror, Action, Drama, etc., en l'occurrence Science
Fiction. Je pourrais aussi enregistrer la longueur du film, dans ce cas 1 heure 56 minutes. Vous pouvez aussi découvrir combien de personnes ont
travaillé sur l'équipe de tournage.

Cet exemple illustre les deux principaux types de données et les deux principales sous-catégories qui s'y trouvent. Ceux-ci sont définis comme
suit:

Données numériques et catégoriques


Données numériques
Comme son nom l'indique, il s'agit de données qui sont représentées par une valeur numérique, donnant une mesure ou une quantité. Il peut être
divisé en deux types, continu et discret:

 Les données numériques continues peuvent prendre un nombre théoriquement infini de valeurs dans une plage donnée. Il est donné en
nombre dans une unité, et peut prendre n'importe quelle valeur entre 0 et, théoriquement, l'infini. Dans notre exemple de film, ce serait le
runtime. Le temps d'exécution d'un film donné apparaît quelque part à une échelle de temps continue, et en fonction de la précision de vos
mesures, pourrait techniquement être représenté par une quantité fractionnée comme 116.381... minutes.
 Les données numériques discrètes sont définies par une certaine quantité naturelle, c'est-à-dire nulle ou un nombre entier positif, 0, 1, 2,
... etc. Dans notre exemple, ce serait le nombre de personnes dans l'équipage. Ce sera toujours un nombre entier positif, vous ne pouvez
pas avoir la moitié d'un membre d'équipage ou un nombre négatif de membres d'équipage. Les données numériques discrètes sont le plus
souvent des données de comptage, en comptant le nombre d'occurrences de quelque chose.

Données catégoriques
Il ne s'agit pas de données définies par un nombre, mais plutôt d'un membre d'une sorte de groupe ou de catégorie. Il peut être divisé en deux
types, ordinaux et nominaux:
 Les données catégoriques ordinaux sont lorsque vos différentes catégories ont un ordre naturel pour elles. Dans notre exemple, c'était le
nombre d'étoiles. Disons que vous aviez 5 catégories (une étoile, deux étoiles, ..., cinq étoiles), ces catégories existent dans un ordre
naturel, de la plus basse au plus haute.
 Les données catégoriques nominales sont des catégories qui n'ont pas d'ordre naturel pour elles. Dans notre exemple, c'était le genre.
Nous avons dit que l'arrivée était dans la catégorie Sci-Fi, mais il n'a aucun sens d'ordonner les genres, Sci-Fi ne vient «avant» ou «après»
aucun autre genre de manière significative. Vous pourriez, si vous le vouliez, les commander par ordre alphabétique, par exemple, mais il
n'y a pas de raison mathématique ou statistique pour le faire, comme il y a des données ordinales.

Quelques notes rapides :

1. Le type de données a des conséquences importantes sur la façon dont elles sont définies statistiquement, par exemple leur fonction de
masse de probabilité, leur fonction de densité de probabilité, qui les distributions les représente le mieux, etc., mais ces détails ne seront
pas couverts dans ce blog, peut-être qu'ils seront dans un autre. Pour l'instant, nous allons couvrir les façons de représenter visuellement
ces différents types de données, c'est-à-dire en les graphique, en utilisant spécifiquement Python.
2. De toute évidence, les quatre types de données définis ci-dessus ne couvrent pas toutes les données possibles. Par exemple, vos données
pourraient être complètement non structurées, et se composer simplement de documents entiers, ou d'images, par exemple. Les types de
données que nous définissons ici sont des données que vous pouvez modéliser statistiquement/mathématiquement, et donc aussi les types
de données que vous pouvez visualiser sur un graphique.

Introduction de nos données


Nous allons utiliser un ensemble de données spécifique pour illustrer ce que j'ai défini ci-dessus, et pour explorer certaines façons de visualiser
graphiquement ces types de données. Les données que nous utilisons proviennent d'un ensemble de données open source sur Kaggle appelé
IMDB top 1000, et contiennent des données sur les 1000 films les mieux notés sur IMDB. Après avoir créé un compte gratuit, les données
peuvent être trouvées et téléchargées ici.

En Python, nous pouvons obtenir un premier aperçu de la structure de nos données:

les pandas d'importation en tant que pd


l'importation n'est passampillée comme np
importer matplotlib.pyplot en plt
importation immergée en tant qu'agne
df - pd.read-csv(./imdb-top-1000.csv')

df.head3(3)

Nous pouvons voir que nous avons une variété de colonnes avec différentes informations sur les films, comme l'année de leur sortie, le genre, le
réalisateur, etc.

Nous allons nous concentrer sur les variables suivantes:

 Temps d'exécution et brut, deux variables numériques continues. (Le brut est le montant en dollars que le film a grossis au box-office)
 No-of-Votes, une variable numérique discrète. (C'est le nombre de votes que le film a reçus sur IMDB)
 Genre et certificat, deux variables catégorielles nominales.
 Note des étoiles, une variable catégorique ordinale. (J'ai créé cela manuellement en convertissant l'IMDB-Rating en nombres-positions.)

J'ai fait un tout petit peu d'ingénierie de caractéristiques pour rendre les variables plus faciles à travailler pour les tracer, voir ci-dessous pour ce
code:

df['Hinuntime') 'df('Runtime') .str.replace(' ' min', '').astype(int)


df(s)) df['Gross'.astype(int)

df['Primary_Genre'''Primary'Genre''''''Genre'.strstr.split(',').strstr[0)

bacs [1, 22, 33, 44, 55, 66, 77, 88, 99, 10

'1 étoiles', '1,5 étoiles', '2 étoiles', '2,5 étoiles', '3 étoiles', '3,5 étoiles', '4 étoiles', '4,5 étoiles', '5
étoiles'.

df['Star-Rating'- 'pd.cut(df(df(IMDB-Rating', bins-bins, labels-labels, droite)False

Un rappel; avant d'exécuter le code pour les parcelles ci-dessous, vous devrez vous assurer que vous avez importé les colis nécessaires en
exécutant ce code:

les pandas d'importation en tant que pd


l'importation n'est passampillée comme np
importer matplotlib.pyplot en plt
importation immergée en tant qu'agne

Comment tracer les différents types de données


La première chose à noter est qu'il y a des dizaines et des dizaines de types différents de parcelles, certaines (bien) plus utiles que d'autres.
Certaines de ces intrigues font essentiellement la même chose les unes que les autres, et sont juste des façons d'être un peu plus fraîches sur les
yeux si vous passez beaucoup de votre temps à regarder et à essayer de donner un sens à ce genre de graphiques. Je ne vais cependant pas
montrer comment faire tous les types de graphique sous le soleil, mais plutôt ce que je considère comme les types de graphes les plus importants
ou les plus utiles, en regardant spécifiquement à travers un objectif de la science des données ou de la statistique. Ce sont les types de graphiques
les plus utiles pour comprendre les données elles-mêmes, par exemple si vous faisiez une analyse exploratoire des données. Il ne s'agit pas, dans
un ordre particulier:

Encadré
np.random.sale(42)

données np.random.normal (loc-0, échelle 1, 1taille 100)

df et pd.DataFrame (données, colonnes)"value"


sns.boxplot(y-df ["value", couleur " 'EBCC2A')

plt.title("Exemple générique Boxplot")

plt.show()

Juste pour définir ce que représentent les différents aspects de la boîte de couverture:

1. Le whistère supérieur ou la clôture supérieure (plus de détails sur ce point ci-dessous car c'est étonnamment compliqué...)
2. Le troisième quartile des données (le point en dessous duquel vivent 75 % des données)
3. La médiane (à mi-parcours des données, c'est-à-dire la moitié des données se trouve en dessous de la médiane, la moitié des données se
trouve au-dessus)
4. Le premier quartile des données (le point en dessous duquel 25 % des données vivent)
5. Le whisker inférieur ou la clôture inférieure (plus de détails sur ce point ci-dessous car c'est étonnamment compliqué...)
6. Un point de exception (plus de détails à ce sujet ci-dessous car c'est étonnamment compliqué...)

(Secz le paragraphe suivant si vous n'êtes pas intéressé par les statistiques maladroites des boxplots...) C'est en fait assez compliqué ce que
représentent les moustaches supérieures et inférieures d'une boxplot. Si vous recherchez sur Google, de nombreux endroits vous diront qu'ils sont
les valeurs minimales et maximales de votre ensemble de données, même si cela n'est manifestement pas vrai étant donné que les graphiques de
boîte incluent des valeurs de données au-dessus et au-dessous des whiskers, c'est-à-dire les valeurs aberrantes. Alors, comment définir ce que
sont les moustaches, et donc ce qui constitue une exception en tant qu'aérien? Différents paquets/personnes peuvent le définir légèrement
différemment, mais je vais illustrer la façon dont le matplotlib le définit, (le paquet utilisé le produit des graphiques dans ce blog). Les quartiles
inférieur et supérieur supposent une distribution normale adaptée aux données, et définissent donc les moustaches inférieures et supérieures
comme:

(Q1-1,5-IQR, Q3 et 1,5-IQR)

Ceci peut être illustré par la figure ci-dessous:


Source : L'ouvrage intitulé « Exploiter les statistiques MAINTENANT Statistiques à l'intention de la personne qui n'a jamais compris les maths"
par Minute Help Guides

Donc, en fait, les valeurs aberrantes sont tout ce qui tombe en dehors du haut/le bas 0,35 % de la distribution.

Les boxplots sont incroyablement utiles pour représenter les données numériques, à la fois continues et discrètes, ainsi que pour combiner des
données catégoriques et numériques (plus de données plus tard). Ils font des comparaisons entre différentes données vraiment faciles à voir
visuellement, par exemple si les distributions sont similaires les unes aux autres, à quoi leurs moyennes sont similaires, etc.

Voir ci-dessous une note sur les parcelles de violon.

Histogrammes
Moyenne: 0

std-dev 11

Échantillon de taille 1 000


données np.random.normal(mean, std-dev, sample-size)

plt.hist (données, bins 30, couleur '3B9AB2', 0.7alpha-g-g-gilomètre------------------------------------------------


'black'-

plt.title («Exemple de l'horlogerie générique»)

plt.xlabel(«Valeure utile»)

plt.ylabel('Compte')

plt.show()

Comme les boxplots, les histogrammes sont bien adaptés pour représenter toutes les données numériques. En particulier, ils sont bons pour
montrer si vos données ont tendance à fausser, et aussi quelle distribution pourrait représenter au mieux vos données, par exemple un
histogramme en forme de cloche, impliquerait que la distribution normale pourrait être une bonne représentation, comme dans l'exemple de
l'histogramme ci-dessus. Idées autour de différentes distributions de données, par ex. Normal, Poisson, etc., sera envisagé dans un futur blog.

Notez également que vous avez la liberté dans la façon de tracer la boîte. Regardez l'argument bins 30 dans le code ci-dessus. Cela signifie que
vous choisissez de compresser les données en 30 bars. Vous verriez beaucoup plus de granularité dans les données si vous choisissez un montant
de poubelle plus élevé, et si vous choisissez une quantité beaucoup plus petite, vous perdriez n'importe quelle définition dans la parcelle. C'est
toujours une bonne idée d'essayer quelques valeurs différentes et de trouver un média heureux.

Différez
np.random.sale(42)

x np.random.normal (loc-0, échelle 11, taille 100)

EPMATHMARKEREP EPMATHMARKEREP 1EPMATHMARKEREP EPMATHMARKEREP 2EPMATHMARKEREP EPMATHMARKEREP EPMATHMARKEREP


EPMATHMARKEREP EPMATHMARKER100EP

plt.scatter(x, y, colore 'F21A00', alpha- 0.750,75)

plt.xlabel(«Extensible explicative»)

plt.ylabel («Variable des réponses»)

plt.title («Exemple générique Scatterplot»)

plt.show()

Les projections sont parfaites lorsque vous voulez montrer la relation entre deux variables numériques, qui peuvent être continues ou discrètes.
Ils montrent clairement toute corrélation entre les variables, et donnent une grande suggestion initiale quant peut-être à quel type de modèle peut-
être convenir pour s'adapter entre elles, par exemple la régression linéaire, la régression non linéaire, etc.

Barcharts
catégories « ['A', 'B', 'C', 'D', 'E')

valeurs: np.random.randint(11, 10, taille 5)5

plt.bar (catégories, valeurs, couleur 'vert')


plt.xlabel («Catégories»)

plt.ylabel('Compte')

plt.title («Exemple Generic Bar chart»)

plt.show()

Ceux-ci sont les meilleurs pour les données catégorielles, tant nominales que ordales. Généralement, vous graphiquez les comptages des
variables catégorielles. Vous pouvez empiler le barchart de différentes manières pour combiner différentes variables catégoriques comme cela
sera montré plus tard.

Shoutout aux Linegraphes et aux Violinplots

Les linegraphes sont un type de graphe extrêmement important, généralement utilisé pour les données des séries chronologiques (toutes les
données enregistrées à des intervalles de temps continus et cohérents). Les lignesgraphes ne seront pas démontrés sur ce blog car ils ne
fonctionnent vraiment pour aucune donnée dans cet ensemble de données IMDB, mais méritent une mention car ils sont omniprésents et
incroyablement utiles.

Les intrigues pour violon peuvent aussi être incroyablement utiles. Ils sont en quelque sorte une combinaison de box-plots et d'histogrammes. Il
s'agit en fait d'une piste de box dans un axe avec un diagramme de densité tourné dans l'autre axe. Elles peuvent être très utiles pour visualiser à
la fois les mesures statistiques et les distorsions, par exemple.

Avec ce contexte, nous allons nous lancer dans la visualisation de nos données IMDB réelles...

Graphiques de nos données IMDB


Une variable continue
Nous pouvons voir à partir des deux intrigues que le temps d'exécution moyen est d'environ 125 minutes, et il y a une nette orientation vers les
données, c'est-à-dire beaucoup de valeurs aberrantes ou de films nettement supérieurs à la moyenne (cela est logique, car le temps minimum est
supérieur à 0, il est donc logique de plus biaiser vers la droite).

Si vous ignoriez les valeurs aberrantes, les données seraient assez normalement distribuées, mais il y a trop de valeurs aberrantes pour juste
ignorer complètement.

Figure, (ax1, ax2) x plt.subplots(11, 22, figsize-(15, 55))

ax1.hist (df. Runtime, bins 30, couleur 'turquoise', bord couleur 'black''noir')

ax1.set-title («Histogram of Runtimes (en mins)»)

ax1.set-xlabel('Hauttime (mins)')
ax1.set-ylabel ('Comparer')

ax2.boxplot(df.Runtime)

ax2.set-title('Boxplot of Runtimes (en mins)')

ax2.set-xlabel(' ')

ax2.set-ylabel('Runtime (mins)')

plt.tight-layout()

plt.show()

Une variable discrète


À l'instar des données d'exécution, nous voyons également une bonne tendance dans le nombre de données de comptage. Vous le voyez souvent
avec des données de comptage, et pour toutes les données qui sont strictement supérieures à 0, et susceptibles d'avoir des valeurs beaucoup plus
grandes que 0.

Contrairement aux données d'exécution, vous ne diriez certainement pas que cela était potentiellement normalement distribué. Cela ressemble
beaucoup plus à une distribution de Poisson pour moi, qui est facilement la distribution la plus courante utilisée pour modéliser les données de
comptage.
fig, (ax1, ax2) et plt.subplots(11, 22, figsize)(12, 55))

ax1.hist (df.No de Votes, bins 30, couleur 'violet', bord'color' 'noir' 'noir' 'noir' 'noiro' 'noufo' 'No 'No 'No
'No 'No 'No 'No 'No

ax1.set-title («Histogramme du nombre de voix»)

ax1.set-xlabel («Nombre de voix»)

ax1.set-ylabel ('Comparer')

ax2.boxplot(df.No-of-Votes)

ax2.set-title («Boxplot of Number of Votes»)

ax2.set-xlabel(' ')

ax2.set-ylabel ('Nombre de Votes')

plt.tight-layout()

plt.show()

Une variable nominale


Ici, nous voyons les comptes du nombre de films dans chaque genre. Cela ne nous dit rien en termes de modélisation des données, mais est utile
pour voir les genres le plus/le moins dans les films les mieux notés sur IMDB. À peine n'importe quel film d'horreur/Thriller qui me surprend.

'Primary_Genre'genre-comtages-df-df-------------------------------------------

plt.figure (figsage(1515, 55))

genre-counts.plot (kind-' 'bar', couleur 'darkorange')

plt.title('Bar diagramme des comptes de chaque genre')

plt.xlabel(''Genre')

plt.ylabel('Compte')

plt.xticks (rotation 00)


Une variable ordinale

Encore une fois, pas trop pour être vraiment déduit ici. Comme les données sont les 1000 films les mieux notés, il n'y a rien de moins de 4
étoiles. Pas beaucoup de 5 étoiles du tout, sinon pas tant que ça ne dit pas sur les données.

star-counts ' df['Star_Rating''Star-Rating''-value-compte-compte----------------------------------------------------


------------------------------------------------

'1 étoiles', '1,5 étoiles', '2 étoiles', '2,5 étoiles', '3 étoiles', '3,5 étoiles', '4 étoiles', '4,5 étoiles', '4,5
étoiles', '5 étoiles'

star-counts-tar-counts.reindex(cutom-order, fill-value-0)
plt.figure (fig.(13, 5))

star-counts.plot (tout - 'bar', couleur 'lightcoral')

plt.title('Bar graphique des comptes de chaque Star Rating')

plt.xlabel('Star Rating')

plt.ylabel('Compte')

plt.xticks (rotation - 0)

Deux variables continues


Ici, le genre de choses que vous rechercheriez sont n'importe quelle corrélation entre les deux variables. Vous pensez généralement à trois choses
principales: la linéarité (c'est-à-dire qu'une ligne droite pourrait bien s'adapter aux données, ou si vous avez besoin de quelque chose de plus
courbée/changer), à quel point la corrélation est forte, c'est-à-dire à quel point les points autour de la ligne imaginaire que vous ajustez, et si la
relation est positive ou négative, c'est-à-dire une augmentation d'une variable a tendance à être en corrélation.

Ici, je ne dirais pas qu'il y a une relation massivement forte dans les deux sens. Peut-être, dans une faible mesure, une augmentation du temps
d'exécution du film augmente-t-elle le montant du box-office, en moyenne, mais je ne pense pas qu'il s'agisse d'une relation particulièrement
forte. Et bien que la relation faible soit assez linéaire, il y a beaucoup de ventilateur, c'est-à-dire que la variance augmente et les points s'étalent
plus à des valeurs plus élevées. Vous pouvez voir une sorte de forme de crocodile dans la parcelle. Dans l'ensemble, je dirais que la relation entre
la longueur et le box-office d'un film est très faible et linéairement positive.

plt.figure (figsette10(10, 66))

plt.scatter(x - df.Runtime, y - df.Gross, couleur - 'limegreen')

plt.title («Scterplot of Runtime against box Office»)

plt.ylabel («Box Office (dollars)»)

plt.xlabel(«heures creuses (mins)»)

plt.show()

Une variable continue et une variable discrète


Je dirais presque exactement la même chose à propos de ce complot et de la relation que moi pour l'intrigue ci-dessus.

plt.figure (figsette10(10, 66))

plt.scatter(x 'df.Runtime, y 'df.No'of'Votes, couleur 'ble 'bl.

plt.title («Scatterplot of Runtime versus number of Votes»)

plt.ylabel («Nombre de votes»)

plt.xlabel(«heures creuses (mins)»)

plt.show()

Configuration ou discrète

Il n'y a pas deux variables discrètes dans cet ensemble de données, mais vous pouvez facilement imaginer comment une parcelle de diffusion
serait utilisée pour les tracer de la même manière que pour deux variables continues ou une variable continue ou une variable continue et une
discrète.

Un seul objectif permanent


Ici, vous avez une idée de la façon dont les distributions des différents genres se comparent. Vous pouvez facilement voir quels genres ont plus
de variabilité dans leurs runtimes, quels genres sont en moyenne plus longs que d'autres, qui ont tendance à avoir plus de valeurs déportées, etc.

plt.figure (figsage(1515, 55))

sns.boxplot(x-Primary-Genre, y- 'Runtime', data-df, couleur 'darkorchid').set(xlabel 'Genre', y' 'Runtime', title


'Boxplots of Runtime split by Genre')

Un organe permanent, un ordinal


Encore une fois, ce n'est pas une énorme somme à commenter ici, à l'exception du fait qu'il est assez intéressant que les films les mieux notés 5
étoiles semblent être un peu plus longs en moyenne que les films 4 et 4,5 étoiles.

plt.figure (fig.(13, 55))

sns.boxplot(x-Star-Rating», y- 'Runtime', data-df, 'goldenrod').set(xlabel 'Star Rating', ylabel 'Runtime', title


'Boxplots of Runtime split by Star Rating')

Un discrète, un nominal
Comme les boxplots de genre et d'heminage, vous avez une idée de la façon dont les distributions se comparent. Vous pouvez facilement voir
quels genres ont plus de variabilité dans leur nombre de votes, quels genres obtiennent plus de votes en moyenne que d'autres, qui ont tendance à
avoir plus de valeurs plus atypiques, etc.

plt.figure (figsage(1515, 55))

sns.boxplot(x-Primary-Genre, y-o-of-Votes», data-df, couleur 'firebrick''.set(xlabel 'Genre', ylabel 'Nombre de


Votes', title 'Boxplots of Number of Votes')

Un seul fragment, un ordinal


C'est assez intéressant en fait. Comme la partie colorée du boxplot pour les films 5 étoiles est complètement en dehors des deux autres, il y a des
preuves significatives que les films 5 étoiles reçoivent beaucoup plus de voix que les films 4 et 4,5 étoiles. L'explication potentielle la plus
évidente pour moi est que les gens sont plus susceptibles de faire l'effort de se connecter à IMDB et de voter pour les films qu'ils ont vraiment
vraiment aimé, et évidemment pour ces films vraiment grands, ils inspirent un sentiment similaire chez beaucoup d'autres personnes aussi.

plt.figure (figsage(1515, 55))

sns.boxplot(x-Star-Rating», y- 'No-of-Votes', data-df, couleur 'mederprint' 'moyen-printeset(x-label 'Star Rating',


ylabel 'Nombre de Votes', title 'Boxplots of Number of Votes')

Deux conditions
J'admets que cette intrigue et l'intrigue en dessous ne sont pas les plus claires, mais l'idée est que vous aviez une idée de la diffusion des
différents certificats dans différents genres. Les films d'animation sont pour la plupart classés U pour Universal naturellement, les films d'horreur
sont principalement A pour adultes, etc.

genre-comtages et pd.crosstab(df['Primary-Genre', df['Certificat')

sum0Truegenre-counts-gère-comtages-comts-comts-s-gre-comts-gre-comts-gère-gre-comts-gère-gre-corre-corre-corre-
corre-corre-corre-corre-corre-corre-corre-gre-gre-gère-gère-gre-gère-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-
g-g-g-g-g-g-g-g-g-g-

customs de couleurs '1f77b4', ''''' ''' ''ff7f0e', 'ffbb78', '2ca02c', ''98df8a', 'd62728', 'ff9896', ''ff9896',
''9467bd', 'c5b0d5', '8c564b', 'c49c94', ''e377c2', 'f7b6d2', '7f7f', 'c7c7c7c7'

plt.figure (fig. 13, 7)

genre-counts.plot (kind-' 'bar', empilé, , figsize-(13, 7), couleur-coff-coloration-coublure-coloration-filet-


coloration-glace-glace-glace-griss-glace-glace-glace-glace-g-glace-glace-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-
g-g-g-g-g-g-g-g-g-g-g-g-g-

plt.title («Stacked Bar Chart of Genre by Certificate»)

plt.xlabel(''Genre')

plt.ylabel('Compte')

plt.xticks (rotation 00)

Un seul état, un ordinal


Pas trop pour inférer ici, si ce n'est la diffusion des genres semble être presque identique entre 4 et 4,5 films notés. Il n'y a pas assez de films
classés 5 étoiles pour pouvoir dire quoi que ce soit de cette intrigue.

genre-comtages - pd.crosstab(df[ 'Star-Rating', df ['Primary-Genre')

'1 étoiles', '1,5 étoiles', '2 étoiles', '2,5 étoiles', '3 étoiles', '3,5 étoiles', '4 étoiles', '4,5 étoiles', '4,5
étoiles', '5 étoiles'

genre-counts-reindex (genre-counts-reindex(pom-file-ordre, fill-value-0)

sum0Truegenre-counts-gère-comtages-comts-comts-s-gre-comts-gre-comts-gère-gre-comts-gère-gre-corre-corre-corre-
corre-corre-corre-corre-corre-corre-corre-gre-gre-gère-gère-gre-gère-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-
g-g-g-g-g-g-g-g-g-g-

customs-colorés-2-(-ff7f0e-, 'ffbbB78', '2ca02c', ''-98df8a', '''d62728', ''ffbb.


''9467bd', 'c5b0d5', '8c564b', 'c49c94', ''e377c2', 'f7b6d2', '7f7f', 'c7c7c7c7'

plt.figure (fig. 13, 7)

genre-counts.plot (gende - 'bar', empilé, , figsize-(13, 7), couleur-cutt-color-file-file-filé-fiche-fiche-fiche-


fielle-glace-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-g-----------

plt.title («Stacked Bar Chart of Star Rating by Gen»)

plt.xlabel('Star Rating')

plt.ylabel('Compte')

plt.xticks (rotation 00)

Deux ordinaux

Il n'y a pas deux variables ordinales dans cet ensemble de données, mais vous pouvez facilement imaginer comment un autre diagramme à barres
empilé serait utilisé pour les tracer de la même manière que pour deux variables nominales ou une valeur nominale et une ordinale. Vous
voudriez simplement vous assurer que les couleurs dans les piles pour les différentes catégories dans la deuxième variable ordinale sont
ordonnées correctement.
Envelopper
J'espère que ce blog donne une idée des différents types de données que vous pouvez modéliser statistiquement, et ce que je crois être la façon la
plus utile de les graphiser, généralement à des fins exploratoires, ou pour démontrer des relations. J'espère que cela a été utile, et vous pouvez
prendre quelques-uns des concepts démontrés ici et les appliquer à vos propres données. Tout le code a été fourni, tout ce que vous avez à faire
est de vous assurer d'importer les paquets nécessaires en haut de votre script avant de commencer:

les pandas d'importation en tant que pd


l'importation n'est passampillée comme np
importer matplotlib.pyplot en plt
importation immergée en tant qu'agne

Heureux Data-ing :)

Vous aimerez peut-être aussi