Pandas Python: a ordem é preservada ao usar groupby () e agg ()?

Frequentei pandas usadosagg() para executar estatísticas resumidas em todas as colunas de um data.frame. Por exemplo, veja como você produziria a média e o desvio padrão:

df = pd.DataFrame({'A': ['group1', 'group1', 'group2', 'group2', 'group3', 'group3'],
                   'B': [10, 12, 10, 25, 10, 12],
                   'C': [100, 102, 100, 250, 100, 102]})

>>> df
[output]
        A   B    C
0  group1  10  100
1  group1  12  102
2  group2  10  100
3  group2  25  250
4  group3  10  100
5  group3  12  102

Nos dois casos, a ordem em que as linhas individuais são enviadas para a função agg não importa. Mas considere o seguinte exemplo, que:

df.groupby('A').agg([np.mean, lambda x: x.iloc[1] ])

[output]

        mean  <lambda>  mean  <lambda>
A                                     
group1  11.0        12   101       102
group2  17.5        25   175       250
group3  11.0        12   101       102

Nesse caso, o lambda funciona como pretendido, produzindo a segunda linha em cada grupo. No entanto, não consegui encontrar nada na documentação do pandas que implique que isso seja garantido em todos os casos. Eu quero usaragg() juntamente com uma função de média ponderada, quero ter certeza de que as linhas que entram na função estarão na mesma ordem em que aparecem no quadro de dados original.

Alguém sabe, de preferência em algum lugar no código fonte do docs ou pandas, se isso é garantido?

questionAnswers(4)

yourAnswerToTheQuestion