为什么我的群体大小不一致“数”? 我正在使用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
答案 0 :(得分:0)
根据你的评论dtypes是'object',我想知道你的Z_ID是否被加载为一列字符串,导致一个因子列。如果某些字符串具有前导空格,则它们将被解释为不同的因子级别。
更一般地说,无论列中包含什么'对象'类型,都可能有一个比例函数,它不像你想象的那样工作。这有点紧张。
对您来说更好的方法可能是找出数据帧列dtype不是int64的原因。我发现在大熊猫中工作时,在数据帧中获取正确的dtypes非常重要。如果您可以发布一些代码,我相信这里的社区可以提出正确加载类型的建议。