[英]Stacked Histograms of Grouped Data In pandas
假设我有一个数据框(df),其中包含很多值,包括X和Y两列。我想创建一个堆叠的直方图,其中每个bin是X中的分类值(例如A和B),并且每个bin内都是按Y中的值堆叠(例如a,b,c,...)。
我可以运行df.groupby([“ X”,“ Y”])。size()来获得如下所示的输出,但是如何从中获得堆叠的直方图呢?
A a 14
b 41
c 4
d 2
e 2
f 15
g 1
h 3
B a 18
b 37
c 1
d 3
e 1
f 17
g 2
所以,我想我已经解决了。 首先需要使用来堆叠数据; .unstack(等级= -1)
这将使它变成一个n×m的类似数组的结构,其中n是X个条目的数量,m是Y个条目的数量。 通过此表单,您可以按照此处提供的大纲进行操作: http : //pandas.pydata.org/pandas-docs/stable/visualization.html
因此,总的命令将是:
df.groupby(["X","Y"]).size().unstack(level=-1).plot(kind='bar',stacked=True)
有点儿笨拙的样子!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.