[PYTHON] Verwenden Sie Matplotlib, um mehrere Liniendiagramme gleichzeitig aus einem Datenrahmen zu erstellen

Einführung

Beim Erstellen eines Diagramms mit Matplotlib von Python habe ich versucht, die Werte aus jedem Datenrahmen abzurufen und alle Diagramme für Hunderte von Listen zu erstellen. Daher habe ich eine Prototypmethode erstellt, die gleichzeitig ausgeführt werden kann.

Methode

Die Methode ist wie folgt. ① Lesen Sie den Datenrahmen ① ‘Wenn die Liste dupliziert wird, fügen Sie sie als neuen Datenrahmen zusammen (entfernen Sie Duplikate). ② Erstellen Sie Diagramme in der angegebenen Reihenfolge mit For Loop

Code

Diesmal habe ich den Kaggle-Datenrahmen verwendet (OSIC Pulmonary Fibrosis Progression). Die Anzahl der Zeilen und Spalten beträgt übrigens (1549,7), und die Duplizierung beträgt 176 Zeilen. Dieses Mal werden wir 176 Diagramme gleichzeitig erstellen.

① Lesen Sie den Datenrahmen

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

① ‘Wenn die Liste dupliziert wird, fügen Sie sie als neuen Datenrahmen zusammen (entfernen Sie Duplikate).

new_df = train_df.groupby([train_df.Patient,train_df.Age,train_df.Sex, train_df.SmokingStatus])['Patient'].count() #Doppelte Anzahl
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

② Erstellen Sie Diagramme in der angegebenen Reihenfolge mit For Loop

import matplotlib.pyplot as plt
for num in new_df['id']: #Wählen Sie das Element aus, mit dem Sie in wiederholen möchten(Wählen Sie einen Datenrahmen aus, der Doppelarbeit verhindert(new_df))
    train2 = train_df.loc[train_df.Patient == num] #Wählen Sie die Spalte aus, die Sie erhalten möchten
    graph = plt.plot(train2["Weeks"],train2["FVC"]) #Rufen Sie die Werte für die X- und Y-Achse des Diagramms ab
    plt.xlabel("Weeks") #Name der X-Achse
    plt.ylabel("FVC") #Name der Y-Achse
    plt.title("{}".format(num)) #Titel
    plt.show()

Ergebnis

Wie in der Abbildung gezeigt, werden 176 Grafiken angezeigt. Ich konnte es nicht zu einem Video machen, also habe ich ein Bild eingefügt und es weggelassen. スクリーンショット 2020-07-20 10.40.47.png スクリーンショット 2020-07-19 15.13.49.png スクリーンショット 2020-07-19 15.14.10.png

Recommended Posts

Verwenden Sie Matplotlib, um mehrere Liniendiagramme gleichzeitig aus einem Datenrahmen zu erstellen
Erstellen Sie sofort ein Diagramm mit 2D-Daten mit der matplotlib von Python
Erstellen Sie einen Datenrahmen aus den erfassten Textdaten des Bootsrennens
Erstellen Sie mit turicreate eine API, die Daten aus einem Modell zurückgibt
Erstellen Sie mit Pandas einen Datenrahmen aus Excel
Python - Lesen Sie Daten aus einer numerischen Datendatei und suchen Sie die multiple Regressionslinie.
Erstellen Sie mit ClustalW2 einen phylogenetischen Baum aus Biopyton
Erstellen Sie mit Kaitai Struct einen Binärdatenparser
Versuchen Sie, mit matplotlib aus den Daten von "Schedule-kun" eine Kampfaufzeichnungstabelle zu erstellen.
Erstellen Sie mit Selenium einen Datenerfassungsbot in Python
Ich habe versucht, Daten aus einer Datei mit Node.js zu lesen.
Erstellen Sie eine GCE-Instanz aus einem GCR Docker-Image mithilfe von Terraform
Erstellen Sie mit Ansible Playbook mehrere Benutzer mit Seriennummern gleichzeitig
Datenvisualisierungsmethode mit Matplotlib (1)
Erstellen Sie eine Dummy-Datendatei
Datenvisualisierungsmethode mit Matplotlib (2)
[numpy] Erstellen Sie eine sich bewegende Fenstermatrix aus mehrdimensionalen Zeitreihendaten
[Spark Data Frame] Ändern Sie eine Spalte von horizontal in vertikal (Scala).
Verwenden Sie ScraperWiki, um regelmäßig Daten von Ihrer Website abzurufen
Erstellen Sie ein Befehlszeilenprogramm, um mit Python Dollar in Yen umzurechnen