📜  Pandas Groupby 和计算平均值

📅  最后修改于: 2022-05-13 01:54:41.274000             🧑  作者: Mango

Pandas Groupby 和计算平均值

Pandas是一个建立在NumPy库之上的开源库。它是一个Python包,提供用于处理数值数据和时间序列的各种数据结构和操作。它主要用于更容易地导入和分析数据。 Pandas速度快,为用户提供高性能和生产力。

Groupby是一个非常简单的概念。我们可以创建一组类别并将函数应用于这些类别。这是一个简单的概念,但它是一种非常有价值的技术,广泛用于数据科学。从某种意义上说,我们可以:

  • 计算每个组的汇总统计信息
  • 执行特定于组的转换
  • 做数据过滤

groupby()涉及拆分对象、应用函数和组合结果的组合。这可用于对这些组上的大量数据和计算操作进行分组。

示例 1:

Python3
# import required module
import pandas as pd
  
# create dataframe
df = pd.DataFrame({'Animal': ['Falcon', 'Falcon', 'Parrot', 'Parrot'],
  
                   'Max Speed': [380., 370., 24., 26.]})
  
# use groupby() to compute mean
df.groupby(['Animal']).mean()


Python3
# import required module
import pandas as pd
  
# assign list
l = [[100, 200, 300], [10, None, 40], [20, 10, 30], [100, 200, 200]]
  
# create dataframe
df = pd.DataFrame(l, columns=["a", "b", "c", ])
  
# use groupby() to generate mean
df.groupby(by=["b"]).mean()


Python3
# import required module
import pandas as pd
  
# assign data
ipl_data = {'Team': ['Riders', 'Riders', 'Devils', 'Devils', 'Kings',  'kings', 'Kings', 'Kings', 'Riders', 'Royals', 'Royals', 'Riders'],
  
            'Rank': [1, 2, 2, 3, 3, 4, 1, 1, 2, 4, 1, 2],
  
            'Year': [2014, 2015, 2014, 2015, 2014, 2015, 2016, 2017, 2016, 2014, 2015, 2017],
  
            'Points': [876, 789, 863, 673, 741, 812, 756, 788, 694, 701, 804, 690]}
  
# create dataframe
df = pd.DataFrame(ipl_data)
  
# use groupby() to generate mean
df.groupby(['Team']).mean()


输出

示例 2:

蟒蛇3

# import required module
import pandas as pd
  
# assign list
l = [[100, 200, 300], [10, None, 40], [20, 10, 30], [100, 200, 200]]
  
# create dataframe
df = pd.DataFrame(l, columns=["a", "b", "c", ])
  
# use groupby() to generate mean
df.groupby(by=["b"]).mean()

输出:

示例 3:

蟒蛇3

# import required module
import pandas as pd
  
# assign data
ipl_data = {'Team': ['Riders', 'Riders', 'Devils', 'Devils', 'Kings',  'kings', 'Kings', 'Kings', 'Riders', 'Royals', 'Royals', 'Riders'],
  
            'Rank': [1, 2, 2, 3, 3, 4, 1, 1, 2, 4, 1, 2],
  
            'Year': [2014, 2015, 2014, 2015, 2014, 2015, 2016, 2017, 2016, 2014, 2015, 2017],
  
            'Points': [876, 789, 863, 673, 741, 812, 756, 788, 694, 701, 804, 690]}
  
# create dataframe
df = pd.DataFrame(ipl_data)
  
# use groupby() to generate mean
df.groupby(['Team']).mean()

输出: