【问题标题】:Slicing Pandas Columns to Obtain Summary Statistics切片 Pandas 列以获取汇总统计信息
【发布时间】:2022-11-10 22:02:31
【问题描述】:

我有一个类似于以下内容的数据框:

ColA  ColB  Year  ...
=====================
1     2     2007
2     5     2007
3     4     2007
4     3     2007
5     2     2008
6     1     2008
7     0     2008
8     9     2008
...

我正在使用dat[['ColA', 'ColB']].describe()。当我这样做时,正如预期的那样,它会显示这两列多年来的汇总统计信息。我想按年对每一列进行汇总统计。在上面的示例中,我将有 4 列统计信息(1 列用于 2007 年的 ColA,1 列用于 2008 年的 ColA,1 列用于 2007 年的 ColB,1 列用于 2008 年的 ColB)。有没有办法扩展pd.describe() 的功能以适应这种情况?

【问题讨论】:

    标签: python python-3.x pandas dataframe summary


    【解决方案1】:

    您可以在致电describe 之前按年份分组:

    df_example = pd.DataFrame({"colA": [1, 2, 3, 4, 5, 6, 7, 8],
                               "Year": [2007, 2007, 2007, 2007, 2008, 2008, 2008, 2008]})
    des = df_example.groupby("Year").describe()
    print(des)
    
     colA                                          
         count mean       std  min   25%  50%   75%  max
    Year                                                
    2007   4.0  2.5  1.290994  1.0  1.75  2.5  3.25  4.0
    2008   4.0  6.5  1.290994  5.0  5.75  6.5  7.25  8.0
    

    【讨论】:

      猜你喜欢
      • 2012-04-08
      • 2019-08-18
      • 1970-01-01
      • 2019-03-19
      • 2015-09-22
      • 1970-01-01
      • 1970-01-01
      • 2020-12-03
      相关资源
      最近更新 更多