我对Python和熊猫还不太熟悉,我在这方面有点挣扎。在
我有一组具有Age
列类型为float64
的数据集。有些值有小数部分,有些没有。我想删除所有具有Age
整数值的行。在
这是我的尝试:
estimatedAges = train[int(train['Age']) < train['Age']]
但我有个错误:
TypeError Traceback (most recent call last) in () 1 #estimatedAges = train[train['Age'] > 1] ----> 2 estimatedAges = train[int(train['Age']) < train['Age']] 3 estimatedAges.info()
C:\Anaconda3\lib\site-packages\pandas\core\series.py in wrapper(self) 76 return converter(self.iloc[0]) 77 raise TypeError("cannot convert the series to " ---> 78 "{0}".format(str(converter))) 79 80 return wrapper
TypeError: cannot convert the series to <class 'int'`>
所以,看起来int()
不适用于序列数据,我将不得不找到另一种方法,我只是不确定另一种方法是什么。在
我最终接受了@jezreal的答案,因为他的速度测试令人信服,但我想再添加一个我找到的解决方案。它需要纽姆,但如果你有进口熊猫,那么你很可能也有进口纽姆。在
试试这个:
我想您可以使用^{} 来转换为
int
:样品:
^{pr2}$计时:
按ajcr的评论编辑,谢谢:
如果值为负浮点和正浮点,则使用:
相关问题 更多 >
编程相关推荐