这就是熊猫的groupby("x").count
和groupby("x").size
的区别吗?
大小是否排除了nil?
发布于 2015-10-26 21:13:57
In [46]:
df = pd.DataFrame({'a':[0,0,1,2,2,2], 'b':[1,2,3,4,np.NaN,4], 'c':np.random.randn(6)})
df
Out[46]:
a b c
0 0 1 1.067627
1 0 2 0.554691
2 1 3 0.458084
3 2 4 0.426635
4 2 NaN -2.238091
5 2 4 1.256943
In [48]:
print(df.groupby(['a'])['b'].count())
print(df.groupby(['a'])['b'].size())
a
0 2
1 1
2 2
Name: b, dtype: int64
a
0 2
1 1
2 3
dtype: int64
发布于 2016-12-30 04:37:45
在@Edchum的回答中添加一点,即使数据没有NA值,count()的结果也更详细,使用前面的示例:
grouped = df.groupby('a')
grouped.count()
Out[197]:
b c
a
0 2 2
1 1 1
2 2 3
grouped.size()
Out[198]:
a
0 2
1 1
2 3
dtype: int64
发布于 2017-03-08 18:24:13
当我们处理普通数据帧时,唯一的区别将是包含NaN值,这意味着当计数行时,count不包括NaN值。
但是,如果我们将这些函数与groupby
一起使用,那么为了通过count()
获得正确的结果,我们必须将任何数值字段与groupby
关联,以获得确切的组数,而对于size()
,则不需要这种类型的关联。
https://stackoverflow.com/questions/33346591
复制相似问题