计算年份子集中的类别,然后除以该子集中的总数

时间:2019-04-09 08:26:17

标签: python pandas

我正在计算每年的负数和正数。最终,我希望获得每年的负面和正面百分比。

我尝试了按年份分组并计算类别,但是新列显示时没有名称。

    df1= df.groupby(['Year','Count of Negative/Positive Margins'])['Count of Negative/Positive Margins'].count()

    df1.head()
    Out[194]: 
    Year  Count of Negative/Positive Margins
    2005  1                                     4001
          2                                     1373
    2006  1                                     4046
          2                                     1304
    2007  1                                     4156
    Name: Count of Negative/Positive Margins, dtype: int64 

这是我的预期输出:

    2005  1                                     74%
          2                                     26%
    .
    .
    .

1 个答案:

答案 0 :(得分:1)

使用SeriesGroupBy.value_counts仅对列Year和参数normalize=True进行分组,然后乘以100,再乘以Series.round,转换为字符串并添加{{ 1}}:

%