[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 030 Erläuterung
Youtube
Videokommentar ist ebenfalls verfügbar.
Problem
P-030: Berechnen Sie für den Datenrahmen für Belegdetails (df_receipt) die Stichprobenverteilung des Verkaufsbetrags (Betrags) für jeden Geschäftscode (store_cd) und zeigen Sie den TOP5 in absteigender Reihenfolge an.
Antworten
Code
df_receipt.groupby('store_cd').amount.var(ddof=0).reset_index().sort_values('amount', ascending=False).head(5)
Ausgabe
|
store_cd |
amount |
28 |
S13052 |
440088.7013 |
31 |
S14011 |
306314.5582 |
42 |
S14034 |
296920.081 |
5 |
S13001 |
295431.9933 |
12 |
S13015 |
295294.3611 |
Kommentar
-Pandas DataFrame / Serie.
- Verwenden Sie diese Option, wenn Sie Daten mit demselben Wert zusammen verarbeiten und die Summe oder den Durchschnitt der Daten mit demselben Wert überprüfen möchten.
-'Groupby 'wird verwendet, wenn Sie Daten mit demselben Wert oder derselben Zeichenfolge erfassen und allgemeine Operationen (Summe, Durchschnitt usw.) für denselben Wert oder dieselbe Zeichenfolge ausführen möchten.
- ** '. Var' ist der Code zur Berechnung der Stichprobenvarianz **.
- ** ' .var (ddof = 0)' bezieht sich auf die Division durch 'N-ddof (= 0)' bei der Berechnung der Stichprobenvarianz **.
- ** 'Ddof' ist eine Abkürzung für Delta-Freiheitsgrade '**. Weitere Informationen finden Sie unter [Wikipedia](https://en.wikipedia.org/wiki/Degrees_of_freedom_(statistics).
- '. Reset_index ()' wird verwendet, wenn Sie die durch 'groupby' getrennten Indexnummern Seriennummern ab 0 neu zuweisen möchten.
-'Amount 'wird in absteigender Reihenfolge mit'.sort_values (' Betrag ', aufsteigend = Falsch)' angezeigt.
- Das gleiche Ergebnis wird mit diesem Code ausgegeben. Da ddof standardmäßig 0 ist, können Sie es in diesem Fall weglassen.
Code
df_receipt.groupby('store_cd').agg({'amount':'var'}).reset_index().sort_values('amount', ascending=False).head(5)