Intern
**Python feladatok** Egy Pandas DataFrame az orders_log adataival, amit df-nek nevezünk. 1) Szűrje a sorokat: állapot "processing" és bevétel (revenue) > 50000 és prioritás "high". Mutassa az eredményt. 2) Hozzon létre egy 'revenue_group' oszlopot a szabályok szerint: ‘Small’ (< 50000), ‘Medium’ (50000 <= revenue < 90000), ‘Large’ (>= 90000). Ezután számolja meg a rendelések számát minden csoportban kategóriánként (Category), és mutassa az eredményt. 1) df[(df["state"] == "processing") & (df["revenue"] > 50000) & (df["priority"] == "high")] 2)
sobes.tech MI
Válasz az MI-től
- A
revenue_grouposzlop létrehozásához használhatja apd.cutvagynp.selectfüggvényeket. Ezután csoportosítsa az adatokat kategóriák szerint, és számolja meg a megrendelések számát:
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)
# Számolja meg a megrendelések számát minden csoportban kategóriánként
result = df.groupby(['Category', 'revenue_group']).size().reset_index(name='order_count')
print(result)
Ez a kód létrehoz egy új oszlopot a bevétel alapján csoportosított kategóriákkal, és kiír egy táblázatot a megrendelések számáról minden kategóriában és bevételi csoportban.