Wie erstelle ich in Pandas ein gestapeltes Balkendiagramm mit gruppierten Daten?

Mary-Kate Olsen
Freigeben: 2024-10-21 19:37:03
Original
227 Leute haben es durchsucht

How to Create a Stacked Bar Chart in Pandas with Grouped Data?

Zeichnen eines gestapelten Balkendiagramms mit Pandas

Frage:

Wie kann ich ein erstellen Gestapeltes Balkendiagramm mit Pandas, ähnlich dem bereitgestellten Bild? Mein aktueller Datenrahmen besteht aus separaten Spalten für die Anzahl „Site-Name“ und „Missbrauch/NFF“, und ich kann die Daten nicht anordnen oder das gestapelte Balkendiagramm erstellen.

Lösung:

1. Datenvorbereitung:

Erstellen Sie einen neuen Datenrahmen, indem Sie die Daten sowohl nach „Site-Name“ als auch nach „Missbrauch/NFF“ gruppieren und das Vorkommen jeder Kombination zählen.

2 . Stapeln der Daten:

Verwenden Sie die Methode .unstack(), um einen gestapelten Datenrahmen mit „Site-Name“ als Index und „Abuse/NFF“ als Spalten zu erstellen.

3. Fehlende Werte füllen:

Behandeln Sie alle fehlenden Werte, indem Sie sie mithilfe der Methode .fillna(0) mit Nullen füllen.

4. Zeichnen des Balkendiagramms:

Verwenden Sie die .plot()-Methode mit dem Parameter kind auf „bar“ und dem Parameter stacked auf True, um ein gestapeltes Balkendiagramm zu erstellen.

Python-Code:

<code class="python">import pandas as pd
import matplotlib.pyplot as plt

# Create a dataframe from the CSV file
df = pd.read_csv("data.csv")

# Group by "Site Name" and "Abuse/NFF" and count occurrences
df2 = df.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0)

# Plot the stacked bar chart
df2[['abuse','nff']].plot(kind='bar', stacked=True)
plt.show()</code>
Nach dem Login kopieren

Ausgabe:

Das resultierende Diagramm ähnelt dem in der ursprünglichen Frage bereitgestellten Bild und zeigt die gestapelten Zählungen von an „Missbrauch“ und „NFF“ für jeden „Site-Namen“.

Das obige ist der detaillierte Inhalt vonWie erstelle ich in Pandas ein gestapeltes Balkendiagramm mit gruppierten Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage