Python|熊猫 dataframe.groupby()
Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。
Pandas groupby用于根据类别对数据进行分组,并对类别应用函数。它还有助于有效地聚合数据。
Pandas dataframe.groupby()
函数用于根据某些标准将数据分组。 pandas 对象可以在它们的任何轴上分割。分组的抽象定义是提供标签到组名的映射。
Syntax: DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, **kwargs)
Parameters :
by : mapping, function, str, or iterable
axis : int, default 0
level : If the axis is a MultiIndex (hierarchical), group by a particular level or levels
as_index : For aggregated output, return object with group labels as the index. Only relevant for DataFrame input. as_index=False is effectively “SQL-style” grouped output
sort : Sort group keys. Get better performance by turning this off. Note this does not influence the order of observations within each group. groupby preserves the order of rows within each group.
group_keys : When calling apply, add group keys to index to identify pieces
squeeze : Reduce the dimensionality of the return type if possible, otherwise return a consistent type
Returns : GroupBy object
有关代码中使用的 CSV 文件的链接,请单击此处
示例 #1:使用groupby()
函数根据“团队”对数据进行分组。
# importing pandas as pd
import pandas as pd
# Creating the dataframe
df = pd.read_csv("nba.csv")
# Print the dataframe
df
现在应用groupby()
函数。
# applying groupby() function to
# group the data on team value.
gk = df.groupby('Team')
# Let's print the first entries
# in all the groups formed.
gk.first()
输出 :
让我们打印包含任何组的值。为此,请使用团队的名称。我们使用函数get_group()
来查找包含在任何组中的条目。
# Finding the values contained in the "Boston Celtics" group
gk.get_group('Boston Celtics')
输出 :
示例#2:使用groupby()
函数根据多个类别形成组(即使用多个列执行拆分)。
# importing pandas as pd
import pandas as pd
# Creating the dataframe
df = pd.read_csv("nba.csv")
# First grouping based on "Team"
# Within each team we are grouping based on "Position"
gkk = df.groupby(['Team', 'Position'])
# Print the first value in each group
gkk.first()
输出 :
groupby()
是一个非常强大的函数,有很多变体。它使按照某些标准拆分数据帧的任务变得非常简单和高效。