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.
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
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()
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.