Intern
**Python-Aufgaben** Ein Pandas DataFrame mit Daten aus orders_log heißt df. 1) Filtern Sie die Zeilen: Status "processing" und Umsatz (revenue) > 50000 und Priorität "high". Geben Sie das Ergebnis aus. 2) Erstellen Sie eine Spalte 'revenue_group' nach den Regeln: ‘Small’ (< 50000), ‘Medium’ (50000 <= revenue < 90000), ‘Large’ (>= 90000). Dann zählen Sie die Anzahl der Bestellungen in jeder Gruppe nach Kategorien (Category) und geben das Ergebnis aus. 1) df[(df["state"] == "processing") & (df["revenue"] > 50000) & (df["priority"] == "high")] 2)
sobes.tech KI
Antwort von AI
- Um eine Spalte
revenue_groupzu erstellen, kannst du die Funktionpd.cutodernp.selectverwenden. Dann gruppiere die Daten nach Kategorien und zähle die Anzahl der Bestellungen:
import numpy as np
conditions = [
df['revenue'] < 50000,
(df['revenue'] >= 50000) & (df['revenue'] < 90000),
df['revenue'] >= 90000
]
choices = ['Small', 'Medium', 'Large']
df['revenue_group'] = np.select(conditions, choices)
# Zähle die Anzahl der Bestellungen in jeder Gruppe nach Kategorie
result = df.groupby(['Category', 'revenue_group']).size().reset_index(name='order_count')
print(result)
Dieses Skript erstellt eine neue Spalte mit Gruppen basierend auf dem Umsatz und gibt eine Tabelle mit der Anzahl der Bestellungen für jede Kategorie und Umsatzgruppe aus.