Utilisez Matplotlib pour créer plusieurs graphiques linéaires à partir d'un bloc de données à la fois

introduction

Lors de la création d'un graphique avec Matplotlib de Python, j'ai essayé d'obtenir la valeur de chaque bloc de données et de créer un graphique pour les centaines de listes, j'ai donc créé une méthode prototype qui peut être effectuée à la fois.

Méthode

La méthode est la suivante. ① Lire la trame de données ① ‘Si la liste est dupliquée, rassemblez-la en tant que nouveau bloc de données (supprimez les doublons) ② Créez des graphiques dans l'ordre à l'aide de la boucle For

code

Cette fois, j'ai utilisé la trame de données kaggle (OSIC Pulmonary Fibrosis Progression). À propos, le nombre de lignes et de colonnes est de (1549,7) et la duplication est de 176 lignes. Cette fois, nous allons créer 176 graphiques à la fois.

① Lire la trame de données

import pandas as pd
train_df = pd.read_csv("train.csv")
train_df

① ‘Si la liste est dupliquée, rassemblez-la en tant que nouveau bloc de données (supprimez les doublons)

new_df = train_df.groupby([train_df.Patient,train_df.Age,train_df.Sex, train_df.SmokingStatus])['Patient'].count() #Nombre de doublons
new_df.index = new_df.index.set_names(['id','Age','Sex','SmokingStatus'])
new_df = new_df.reset_index()
new_df.rename(columns = {'Patient': 'freq'},inplace = True) 
new_df

② Créez des graphiques dans l'ordre à l'aide de la boucle For

import matplotlib.pyplot as plt
for num in new_df['id']: #Sélectionnez l'élément avec lequel vous souhaitez répéter dans(Sélectionnez un bloc de données qui élimine la duplication(new_df))
    train2 = train_df.loc[train_df.Patient == num] #Sélectionnez la colonne que vous souhaitez obtenir
    graph = plt.plot(train2["Weeks"],train2["FVC"]) #Obtenez les valeurs des axes X et Y du graphique
    plt.xlabel("Weeks") #Nom de l'axe X
    plt.ylabel("FVC") #Nom de l'axe Y
    plt.title("{}".format(num)) #Titre
    plt.show()

résultat

Comme le montre la figure, 176 graphiques sont affichés. Je n'ai pas pu en faire une vidéo, alors j'ai inclus une image et je l'ai omise. スクリーンショット 2020-07-20 10.40.47.png スクリーンショット 2020-07-19 15.13.49.png スクリーンショット 2020-07-19 15.14.10.png

Recommended Posts

Utilisez Matplotlib pour créer plusieurs graphiques linéaires à partir d'un bloc de données à la fois
Créez instantanément un diagramme de données 2D à l'aide de matplotlib de python
Créer un bloc de données à partir des données textuelles de course de bateaux acquises
Créer une API qui renvoie les données d'un modèle à l'aide de turicreate
Créer un bloc de données à partir d'Excel à l'aide de pandas
Python --Lisez les données d'un fichier de données numériques et recherchez la ligne de régression multiple.
Créer un arbre phylogénétique à partir de Biopyton en utilisant ClustalW2
Créer un analyseur de données binaires à l'aide de Kaitai Struct
Essayez de créer une table d'enregistrement de bataille avec matplotlib à partir des données de "Schedule-kun"
Créer un bot de collecte de données en Python à l'aide de Selenium
J'ai essayé de lire les données d'un fichier en utilisant Node.js.
Créer une instance GCE à partir d'une image Docker GCR à l'aide de terraform
Créez plusieurs utilisateurs avec des numéros de série à la fois avec Ansible Playbook
Méthode de visualisation de données utilisant matplotlib (1)
Créer un fichier de données factice
Méthode de visualisation de données utilisant matplotlib (2)
[numpy] Créer une matrice de fenêtre mobile à partir de données de séries chronologiques multidimensionnelles
[Spark Data Frame] Changer une colonne de l'horizontale à la verticale (Scala)
Utilisez ScraperWiki pour obtenir régulièrement des données de votre site Web
Créez un outil de ligne de commande pour convertir des dollars en yens en utilisant Python