这与"的Kaggle数据集有关。 H-1B签证申请2011-2016":
[In]: df.groupby(['EMPLOYER_NAME','YEAR']).size().sort_values(ascending=False).head(10)
[Out]:
EMPLOYER_NAME YEAR
INFOSYS LIMITED 2015 33245
2013 32223
2016 25352
2014 23759
CAPGEMINI AMERICA INC 2016 16725
TATA CONSULTANCY SERVICES LIMITED 2015 16553
INFOSYS LIMITED 2012 15818
TATA CONSULTANCY SERVICES LIMITED 2014 14098
2016 13134
WIPRO LIMITED 2015 12201
我想分组索引" Infosys Limited"如下所示,因为目前在上面的输出中,它将分别显示2012年Infosys有限公司,并且还需要绘制图表以了解这些公司在过去5年中的趋势,我使用matplotlib& amp; seaborn for graph,不确定我们是否可以使用这些工具绘制这些图表。任何帮助非常感谢。
Infosys Limited 2012 15818
2013 32223
2014 23759
2015 33245
2016 25352
Graph:
答案 0 :(得分:3)
让我们试试这段代码:
df1 = df.groupby(['EMPLOYER_NAME','YEAR']).size().unstack()
df1.columns = df.columns.droplevel()
df1.plot(kind='barh')
答案 1 :(得分:2)
这实际上是一系列问题,因此将来尝试将其简化为一个特定项目。
它是独立的,因为您对值进行了排序。取消sort_values
并再次查看输出,应按照您想要的方式对其进行分组。
您展示的图表很可能是使用ggplot2在R中生成的。有一个版本的ggplot已被移植到python,但它并不像R版本那么精彩。如果你想要看起来像这样的图形,你可以从那里开始。就matplotlib而言,您可以通过在脚本开头调用pyplot.style.use('ggplot')
来窃取ggplot样式。但请注意,一些更复杂的ggplot图表很难在matplotlib中完全复制。