熊猫中条形图的替代标签

机械

我有一个熊猫数据框,并且正在使用以下方法在一个特定列(“ question_1”)上绘制条形图:

df1.question_1.value_counts().plot(kind='bar', rot=0)

这很好。value_counts()方法返回以下系列:

4  30
3  20
5  15
2  10

然后,第一列用作条的标签,秒列是条的高度。

现在,我有另一个数据框df2,其第一个数据框df1的问题_1列中的值具有编码:

ID  value
1   "test1"
2   "test2"
3   "test3"
4   "test4"
5   "test5"

现在,我想将这种编码用于value_counts()的结果:

"test4"  30
"test3"  20
"test5"  15
"test2"  10

最后,我的目标是用这些编码替换条形图的标签(即,我希望使用“ test4”作为标签,而不是4)。也许这也可以以更简单的方式完成。

斯科特·波士顿

达蒙

您可以将由值计数产生的系列索引映射到新索引:

s是来自value_counts的结果:

s = pd.Series([30,20,15,10],index=[4,3,5,2])

并绘制:

在此处输入图片说明

df2是您的“编码数据帧”:

df2 = pd.DataFrame({'ID':[1,2,3,4,5],'value':['test1','test2','test3','test4','test5']})

让我们使用以下命令将s.index映射到df2值:

s.index = s.index.to_series().map(df2.set_index('ID')['value'])

并且,现在绘制图。

s.plot(kind='bar', rot=0)

输出:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章