使用pandas,我试图使用以下方法绘制一些数据:
df.size().unstack().plot(kind=barh)
但是我收到了这个错误:
TypeError: 'numpy.int64' object is not callable
然后我只尝试了df.size()并得到了同样的错误.现在我不确定是什么导致这种情况,因为根据文档,DataFrame.size()应该可以正常工作.任何的想法?
解决方法:
你需要在DataFrame.size
中省略一个问题,但输出是标量,所以不可能调用unstack:
df.size
样品:
df = pd.DataFrame({'A':list('abcdef'),
'B':[4,5,4,5,5,4],
'C':[7,8,9,4,2,3],
'D':[1,3,5,7,1,0],
'E':[5,3,6,9,2,4],
'F':list('aaabbb')})
print (df)
A B C D E F
0 a 4 7 1 5 a
1 b 5 8 3 3 a
2 c 4 9 5 6 a
3 d 5 4 7 9 b
4 e 5 2 1 2 b
5 f 4 3 0 4 b
a = df.size
print (a)
36
也许需要groupby
GroupBy.size()
:
df1 = df.groupby(['F', 'B']).size().unstack()
print (df1)
B 4 5
F
a 2 1
b 1 2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。