Zmiana nazw kolumn w funkcji Pandas Groupby [duplikat]

To pytanie ma już odpowiedź tutaj:

Wiele agregacji tej samej kolumny przy użyciu pand GroupBy.agg () 3 odpowiedzi

1). Mam następujący przykładowy zestaw danych:

>>> df
    ID     Region  count
0  100       Asia      2
1  101     Europe      3
2  102         US      1
3  103     Africa      5
4  100     Russia      5
5  101  Australia      7
6  102         US      8
7  104       Asia     10
8  105     Europe     11
9  110     Africa     23

Chciałem pogrupować obserwacje tego zestawu danych według ID regionu i sumując liczbę dla każdej grupy. Użyłem więc czegoś takiego:

>>> print(df.groupby(['ID','Region'],as_index=False).count().sum())

    ID     Region  count
0  100       Asia      2
1  100     Russia      5
2  101  Australia      7
3  101     Europe      3
4  102         US      9
5  103     Africa      5
6  104       Asia     10
7  105     Europe     11
8  110     Africa     23

Przy użyciu as_index = False Jestem w stanie uzyskać wynik „SQL-like”. Mój problem polega na tym, że nie jestem w stanie zmienić nazwy łącznej liczby zmiennych tutaj. Więc w SQL, jeśli chciałbym zrobić powyższą rzecz, zrobiłbym coś takiego:

select ID, Region, sum(count) as Total_Numbers
from df
group by ID, Region
order by ID, Region

Jak widzimy, bardzo łatwo jest mi zmienić nazwę zmiennej agregacyjnej „count” na Total_Numbers w SQL. Chciałem zrobić to samo w Pandach, ale nie mogłem znaleźć takiej opcji w funkcji grupowania. Czy ktoś może pomóc?

2). Drugim pytaniem i spostrzeżeniami jest to, że można bezpośrednio używać nazw kolumn w funkcji ramki danych Pandas bez umieszczania ich w cudzysłowach? Rozumiem, że nazwy zmiennych są ciągami, więc muszą znajdować się w cudzysłowach, ale widzę, czy używamy funkcji zewnętrznej ramki danych i jako atrybutu nie wymagamy, aby były wewnątrz cudzysłowów. Podobnie jak df.ID.sum () itp. Tylko wtedy, gdy używamy go w funkcji DataFrame, takiej jak df.sort () lub df.groupby, musimy użyć go w cudzysłowie. Jest to w rzeczywistości trochę uciążliwe, ponieważ w SQL, SAS lub innych językach po prostu używamy nazwy zmiennej bez cytowania ich. Wszelkie sugestie na ten temat?

Prosimy zasugerować powyższe dwa punkty (pierwszy główny, drugi drugi opinia

Dzięk