熊猫组大小“计数”间歇计数不足

时间:2013-01-17 19:46:05

标签: pandas

为什么我的群体大小不一致“数”? 我正在使用Pandas 10.0,将600万行数据集减少到400k组:

In [16]: df.groupby('Z ID').size()[470009:470010]
Out[16]:
Z ID
994555          6

In [14]: df[df['Z ID'] == 994555].groupby('Z ID').size() 
Out[14]:
Z ID
994555          9

当我查看原始数据时,有9个项目。

编辑:原始数据 完整的数据集是600万条记录。 Pandas size()在小家伙身上很有效。

            FilterDate           Z ID   AR Code AA Code
48349    12/1/2007..2/28/2009    994555  377     202
151060   2/1/2008..4/30/2009     994555  377     202
204179   3/1/2008..5/31/2009     994555  377     202
244504   4/1/2008..6/30/2009     994555  377     202
302728   5/1/2008..7/31/2009     994555  377     202
365780   6/1/2008..8/31/2009     994555  377     202
431555   7/1/2008..9/30/2009     994555  377     202
499234   8/1/2008..10/31/2009    994555  377     202
786937   12/1/2008..2/28/2010    994555  377     202

1 个答案:

答案 0 :(得分:0)

根据你的评论dtypes是'object',我想知道你的Z_ID是否被加载为一列字符串,导致一个因子列。如果某些字符串具有前导空格,则它们将被解释为不同的因子级别。

更一般地说,无论列中包含什么'对象'类型,都可能有一个比例函数,它不像你想象的那样工作。这有点紧张。

对您来说更好的方法可能是找出数据帧列dtype不是int64的原因。我发现在大熊猫中工作时,在数据帧中获取正确的dtypes非常重要。如果您可以发布一些代码,我相信这里的社区可以提出正确加载类型的建议。