total_income_language = pd.DataFrame(df.groupby('language')['gross'].sum())
average_income_language = pd.DataFrame(df.groupby('language')['gross'].mean())
plt.bar(total_income_language.index, total_income_language["gross"],
label="Total Income of Language")
plt.bar(average_income_language.index, average_income_language["gross"],
label="Average Income of Language")
plt.xlabel("Language")
plt.ylabel("Log Dollar Values(Gross)")
我想画出每种语言的总和和平均数。我不确定我的代码是否符合我的要求。我在画这张图时出错了。我不知道我在哪里把编码搞砸了。我需要一些帮助。
这是错误消息
而不是:
df.groupby('language')['gross'].sum()
试试这个:
df.groupby('language').sum()
与mean()
类似。这将使您的代码更接近于运行。
调用数据帧的groupby()
方法会生成一个groupby
对象,然后需要在该对象上调用聚合函数,如sum
、mean
或agg
。groupby
文档非常棒:https://pandas.pydata.org/pandas-docs/stable/groupby.html
此外,您还可以通过两行代码实现所需的输出:
df.groupby('language').sum().plot(kind='bar')
df.groupby('language').mean().plot(kind='bar')
您可以使用通过agg
聚合的Groupby
,通过dics
重命名列,并通过DataFrame.plot.bar
绘制。
最后一组标签由ax设置。设置
。
df = pd.DataFrame({'language':['en','de','en','de','sk','sk'],
'gross':[10,20,30,40,50,60]})
print (df)
gross language
0 10 en
1 20 de
2 30 en
3 40 de
4 50 sk
5 60 sk
d = {'mean':'Average Income of Language','sum':'Total Income of Language'}
df1 = df.groupby('language')['gross'].agg(['sum','mean']).rename(columns=d)
print (df1)
Total Income of Language Average Income of Language
language
de 60 30
en 40 20
sk 110 55
ax = df1.plot.bar()
ax.set(xlabel='Language', ylabel='Log Dollar Values(Gross)')
如果要旋转轴x
的标签:
ax = df1.plot.bar(rot=0)
ax.set(xlabel='Language', ylabel='Log Dollar Values(Gross)')
Flink(批处理/流式处理)中是否有方法同时计算字段的平均值和总和?使用聚合方法,我可以计算groupBy结果中字段的和,但如何同时计算平均值呢?下面的示例代码。
我是新来的。任何帮助都将不胜感激 这是我的原始数据: 我想得到的是: 1创建一个新的列调用平均值,以计算每个提要的平均市值。 2求加权平均数。 这是我当前的代码,我得到NaN: 对于加权平均代码: 我得到了一个错误: AttributeError:“Series”对象没有属性“value”
我尝试使用ireport对BigDecimal值进行sum和avg算术运算。我做的时候总会有误差。 所有类型都在 ireport 中定义为 BigDecimal 。 -分离,此示例中的变量工作正常,但我不能对变量进行算术运算。 总和与平均值如何键入BigDecimal? 在我的示例中,这不是工作: 我尝试在ireport中使用Java sintax,但是不起作用。 我使用的是3.0.0版iRepo
问题内容: 作为输入,我有一个带时间的CSV文件,每次都有一串数字。 我想输出按小时平均和总和分组的每小时表格: 到目前为止,我一直在看用字典来完成它,其中小时是一个关键,值是一个计数和总和的列表,然后将总和除以计数就可以得到平均值。我敢肯定,必须有一种更清洁的方法来做到这一点。也许有些图书馆可以使用它。有什么建议? 问题答案: 一个熊猫的解决方案: 印刷品: 另存为csv文件: 这是以下内容:
是否可以对流进行求和、平均并将其转换为新对象。我有个目标 现在我想得到这个对象列表的平均值和总和(代码总和价格和代码平均价格) 然后我想创建一个新对象(页脚 这就是我现在所拥有的,它可以工作,但是我要通过两次流。我想要一个方法,我可以通过一次流来做到这一点。 有没有更好的方法做到这一点而不必重复这一点。谢谢
有没有办法从标准差和平均值生成钟形曲线?我读过关于这一点的参考文献,但找不到算法。 我有一个数字列表,它们是预先标准化的查找(得分=>百分位数)。我已经排列好了,我需要画一条钟形曲线,这样我就可以给曲线下的区域部分着色,以表示图表上的分数(我想是一个面积图/infrographic esk)。我真的卡在了第一道坎上。 我计划通过按以下方式对数据进行范围调整来绘制历史图: 谢谢你的帮助!