我对使用PANDAS和python还很陌生。在
我有一个分层的数据集,有几个受试者,每个人都有一些观察结果。总数据框大约有50万行。在
我想计算观察数。。。在
## toy problem
d = {'one' : Series(['a', 'a', 'a', 'b', 'b', 'b'], index = [0,1,2,3,4,5]),
'two' : Series([1.1, 2.5, 3.3, 2.5, 3.3, 9.5], index = [0,1,2,3,4,5])}
df = DataFrame(d)
for i in df.one.unique():
for j in range(0,len(df[df.one == i])):
print j
所以我想为每一行指定一列j。我计算j没有问题,但我不知道如何分配它。我尝试过使用iloc,这是难以置信的慢,或者写一个列表,然后加入到df中,也非常慢(目前运行超过30分钟,正在计数…)。我知道python是处理向量化问题的最佳方法,但我无法为这种情况想出向量解决方案。在
最好的办法是什么?在R中这真的很简单和快速。我目前正在迁移到Python&PANDAS,期望它更快,但这里似乎不是这样。在
有什么建议吗?在
您可以使用^{} method :
相关问题 更多 >
编程相关推荐