Pandy: jak używać as_index w groupby
Możesz użyć argumentu as_index w operacji pandas groupby() , aby określić, czy kolumna, według której grupujesz, ma być używana jako indeks wyniku.
Argument as_index może mieć wartość True lub False .
Wartość domyślna to True .
Poniższy przykład pokazuje, jak w praktyce używać argumentu as_index .
Przykład: Jak używać as_index w grupie pand
Załóżmy, że mamy następującą ramkę danych pand, która pokazuje liczbę punktów zdobytych przez koszykarzy z różnych drużyn:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'],
' points ': [12, 15, 17, 17, 19, 14, 15, 20, 24, 28]})
#view DataFrame
print (df)
team points
0 to 12
1 to 15
2 to 17
3 to 17
4 to 19
5 B 14
6 B 15
7 C 20
8 C 24
9 C 28
Możemy użyć poniższej składni, aby pogrupować wiersze według kolumny zespołu i obliczyć sumę kolumn punktów , podając as_index=True , aby użyć zespołu jako indeksu wyjściowego:
#group rows by team and calculate sum of points
print ( df.groupby (' team ', as_index= True ) .sum ())
points
team
At 80
B29
C 72
Dane wyjściowe wyświetlają sumę wartości w kolumnie punktów , pogrupowaną według wartości w kolumnie zespołu .
Należy pamiętać, że kolumna zespołu służy jako indeks wyniku.
Jeśli zamiast tego określimy as_index=False, wówczas kolumna zespołu nie będzie używana jako indeks wyjściowy:
#group rows by team and calculate sum of points
print ( df.groupby (' team ', as_index= False ) .sum ())
team points
0 to 80
1 B 29
2 C 72
Należy zauważyć, że zespół jest teraz używany jako kolumna w wynikach, a kolumna indeksu ma po prostu numer 0-2.
Uwaga : pełną dokumentację operacji groupby() pand można znaleźć tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na pandach:
Jak zdobyć grupę po użyciu Pandas Groupby
Jak przekonwertować dane wyjściowe Pandas GroupBy na DataFrame
Jak zastosować funkcję do Pandas Groupby