pandas groupby变换表现不同,具有看似等效的表示

时间:2016-10-19 21:34:19

标签: python pandas

考虑scanf()

df

我预计以下两种配方是等效的。

制定1

df = pd.DataFrame(dict(A=['a', 'a'], B=[0, 1]))

enter image description here

制定2

df.groupby('A').transform(np.mean)

enter image description here

我认为 公式2 的结果不正确。但在我哭泣 bug 之前,也许有人对它有一个合理的解释。

1 个答案:

答案 0 :(得分:3)

对我来说这看起来像个错误:

In [19]: df.groupby('A').transform(lambda x: x.sum())
Out[19]:
   B
0  1
1  1

In [20]: df.groupby('A').transform(lambda x: len(x))
Out[20]:
   B
0  2
1  2

In [21]: df.groupby('A').transform(lambda x: x.sum()/len(x))
Out[21]:
   B
0  0
1  0

PS Pandas版本:0.19.0