Python 对于包含字符串的列,如何通过pandas的对象从每组中获取第一行?
我有一个熊猫数据框,包含以下列:“用户”、“文本1”、“文本2”和“时间”。我想按用户分组,并为每个用户取对应文本的最大时间。我试图通过以下代码实现这一点(首先使用Python 对于包含字符串的列,如何通过pandas的对象从每组中获取第一行?,python,pandas,group-by,Python,Pandas,Group By,我有一个熊猫数据框,包含以下列:“用户”、“文本1”、“文本2”和“时间”。我想按用户分组,并为每个用户取对应文本的最大时间。我试图通过以下代码实现这一点(首先使用first): 因此,我得出以下结论: user text1 text2 time 0 f 111 11 1 1 f 222 22 2 2 s 333 33 3 ---------------- user text2 time 0 f
first
):
因此,我得出以下结论:
user text1 text2 time
0 f 111 11 1
1 f 222 22 2
2 s 333 33 3
----------------
user text2 time
0 f 22 2
1 s 33 3
我们可以看到,它适用于包含整数的
text2
列,但不适用于包含字符串的text1
列。为什么会发生这种情况以及如何解决这个问题?您使用的pandas是什么版本,在64位python3.3.5
和numpy1.8.1
的0.8.0、numpy==1.6.2、python 2.7.3上对我很好,我会升级pandas和numpy,然后再试一次,它看起来像是以前修复过的bug
user text1 text2 time
0 f 111 11 1
1 f 222 22 2
2 s 333 33 3
----------------
user text2 time
0 f 22 2
1 s 33 3