什么时候使用df.value_counts()和df.groupby('...')。count()?

浏览:44日期:2024-03-05
如何解决什么时候使用df.value_counts()和df.groupby('...')。count()??

有差额value_counts收益:

结果对象将按降序排列,以便第一个元素是最频繁出现的元素。

但count不是,它对输出排序index(由中的列创建groupby(’col’))。

df.groupby(’colA’).count()

是用于df按功能汇总所有列的,count.因此它计算不包括NaNs的值。

因此,如果count仅需要一列,则:

df.groupby(’colA’)[’colA’].count()

样品:

df = pd.DataFrame({’colB’:list(’abcdefg’), ’colC’:[1,3,5,7,np.nan,np.nan,4], ’colD’:[np.nan,3,6,9,2,4,np.nan], ’colA’:[’c’,’c’,’b’,’a’,np.nan,’b’,’b’]})print (df) colA colB colC colD0 c a 1.0 NaN1 c b 3.0 3.02 b c 5.0 6.03 a d 7.0 9.04 NaN e NaN 2.05 b f NaN 4.06 b g 4.0 NaNprint (df[’colA’].value_counts())b 3c 2a 1Name: colA, dtype: int64print (df.groupby(’colA’).count()) colB colC colDcolA a1 1 1b3 2 2c2 2 1print (df.groupby(’colA’)[’colA’].count())colAa 1b 3c 2Name: colA, dtype: int64解决方法

我在Pandas听说过,通常有多种方法可以做同一件事,但是我想知道-

如果我要按特定列中的值对数据进行分组并计算具有该值的项目数,那么什么df.groupby(’colA’).count()时候使用有意义,df[’colA’].value_counts()什么时候使用有意义?

相关文章: