划分两个熊猫值

时间:2016-04-26 05:39:52

标签: python pandas

我有来自以下命令的以下数据集

df.ab.value_counts()

Out[154]:

0    31196
1    18804
dtype: int64

我想找到总计数中的1分数。所以基本上是18804/50000

我执行以下操作:

(df.ab.value_counts()[1])/(df.ab.count())

Out[146]:

0

如你所见它给我零,而它应该是0.3768(18804/50000)

知道为什么吗?

编辑II:

知道如何绘制这两个值0和1的条形图及其计数吗?

3 个答案:

答案 0 :(得分:2)

我认为您需要向float添加投射:

print (df.ab.value_counts()[1])/float(df.ab.count())
0.37608

print 18804/50000
0
print 18804/float(50000)
0.37608
print float(18804)/50000
0.37608

答案 1 :(得分:0)

你可以更容易地做到

df.ab.value_counts(normalize=True)

答案 2 :(得分:0)

from __future__ import division
(df.ab.value_counts()[1])/(df.ab.count())  ###should give float value 0.3768

没有测试过,但希望它会对你有所帮助。