Pandas – 对数据框架进行Groupby值计数

Pandas – 对数据框架进行Groupby值计数

可以采用Pandas来分别计算数据框中每个值的频率。让我们看看如何在pandas数据框中计算Groupby值。为了计算pandas数据框架中的Groupby值,我们将使用groupby()size()和unstack()方法。

使用的方法:

  • groupby(): groupby()函数用于根据一些标准将数据分成若干组。Pandas对象可以在其任何一个axis上进行分割。分组的抽象定义是提供一个标签到组名的映射

语法:

DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, kwargs)

参数 :

  • by : 映射、函数、str或iterable
  • axis : int, default 0
  • level:如果axis是一个多指标(分层),按一个或多个特定级别分组
  • as_index : 对于聚合输出,返回以组标签为索引的对象。仅与DataFrame输入有关。as_index=False实际上是 “SQL风格 “的分组输出
  • sort : 对组键进行排序。关掉这个功能可以获得更好的性能。注意这并不影响每组中观察值的顺序。groupby保留了每组中的行的顺序。
  • group_keys : 当调用apply时,在索引中添加组键,以识别碎片
  • squeeze : 如果可能的话,减少返回类型的维度,否则返回一个一致的类型

返回 : GroupBy 对象

  • size(): size方法用于获取代表对象中元素数量的整数。如果DataFrame.Size方法返回的是行数乘以列数。

语法:Dataframe.size()

  • unstack(): unstack方法对DataFrame中的MultiIndex对象起作用,产生一个重塑的DataFrame,其最内层有新的列标签。

语法:Dataframe.unstack()

步骤

  • Import module
  • 创建或加载数据
  • 创建数据框架
  • 每个值的出现次数的计算值
  • 打印生成的数据框

示例1:

# import pandas
import pandas as pd
  
# create dataframe
df = pd.DataFrame({
    'Course': ['BBA', 'BCA', 'BBA', 'BCA', 'BCA'],
    'Student Name': ['Rishabh', 'Rahul', 'Suraj', 'Mukul', 'Vinit'],
    'Age': [21, 22, 23, 22, 23]})
  
  
# print original dataframe
print("original dataframe")
display(df)
  
# counts Groupby value
df = df.groupby(['Course', 'Student Name', 'Age']).size().unstack(fill_value=0)
  
# print dataframe
print("Result :")
display(df)

输出:

Pandas - 对数据框架进行Groupby值计数

示例 2:

# import pandas
import pandas as pd
  
# create dataframe
df = pd.DataFrame({
    'City': ['Saharanpur', 'Meerut', 'Saharanpur', 'Saharanpur', 'Meerut'],
    'Employes Name': ['Robin', 'Tushar', 'Rohan', 'Mukul', 'Manoj'],
    'Salary': [21000, 22000, 21000, 22000, 22000]})
  
  
# print original dataframe
print("original dataframe: ")
display(df)
  
# counts Groupby value
df = df.groupby(['City', 'Employes Name', 'Salary']
                ).size().unstack(fill_value=0)
  
# print dataframe
print("result: ")
display(df)

输出:

Pandas - 对数据框架进行Groupby值计数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程