我已经对整个数据帧进行了分组,并计算了满足条件的行数。然后,返回值是一个整数。
machines_class1_grouped_with_test=machines_class1[machines_class1.CpuEff>90].groupby('Type').count().reset_index()
machines_class1_grouped_with_test['CpuEff']0 109
1 10791
2 2
3 17
4 18
5 9
6 413
7 12
8 132
9 29
Name: CpuEff, dtype: int64当我想要在饼图中绘制时,问题就出现了。
machines_class1_grouped_with_test['CpuEff'].agg(lambda x: sum(x)).plot(kind='pie',title='',figsize=(10,10))但它返回了我的错误:
AttributeError: 'int' object has no attribute 'plot'为什么不让我画饼图呢?我通常这样做,但不同的是我没有使用双精度数字或浮点数。
发布于 2021-01-29 22:33:55
machines_class1_grouped_with_test['CpuEff'].agg(lambda x: sum(x)).plot(kind='pie',title='',figsize=(10,10))等同于
machines_class1_grouped_with_test['CpuEff'].agg(sum).plot(kind='pie',title='',figsize=(10,10))当应用于单个列时(就像这里的情况一样),.agg(sum)只对这一列求和,返回一个整数(这可以解释错误)。目前还不清楚这种聚合是什么意思。也许只需删除表达式的这一部分,并使用
machines_class1_grouped_with_test['CpuEff'].plot(kind='pie',title='',figsize=(10,10))https://stackoverflow.com/questions/65955585
复制相似问题