Python 获取熊猫的无序类型';仅使用数字数据剪裁列
我正在制作我的第一个熊猫数据探索笔记本,我遇到了一些熊猫操作的问题,比如标题的Python 获取熊猫的无序类型';仅使用数字数据剪裁列,python,pandas,dataframe,Python,Pandas,Dataframe,我正在制作我的第一个熊猫数据探索笔记本,我遇到了一些熊猫操作的问题,比如标题的剪辑 我有一个包含以下列和数据类型的数据框: kairaId对象 性对象 主要人物布尔 生日花车64 生日浮动64 生日花车64 死亡年浮动64 自有物 返回的Karelia对象 以前的婚姻对象 页码对象 sourceTextId对象 职业int64 professionName对象 地名对象 区域对象 StemedName对象 extractedName对象 纬度浮动64 经度浮动64 儿童计数int64 迁移计数
剪辑
我有一个包含以下列和数据类型的数据框:
kairaId对象
性对象
主要人物布尔
生日花车64
生日浮动64
生日花车64
死亡年浮动64
自有物
返回的Karelia对象
以前的婚姻对象
页码对象
sourceTextId对象
职业int64
professionName对象
地名对象
区域对象
StemedName对象
extractedName对象
纬度浮动64
经度浮动64
儿童计数int64
迁移计数浮点数64
数据类型:对象
我想删除一些基于经度的异常行。我认为熊猫的剪辑
会起作用:
df=df.clip(无,上=50.0,轴class='经度')
但是,这会导致TypeError:unorderable类型:str()>=float()
我意识到Pandas试图比较str和float,这导致了Python3中的一个错误,但我不明白为什么,也不知道如何避免这个问题。显然是其他专栏的内容干扰了这一点?我在尝试其他一些操作时也出现了错误
我的数据框中是否存在根本性的错误?是否有与此问题相关的文档?今晚我刚刚挑选了熊猫,所以我还不确定哪些文档是相关的,或者数据帧在幕后是如何运作的。我可能会买一本关于这个话题的书 我认为您误解了
df.clip
的用法-它是为了将异常值与某些特定的外部边界相一致,而不是删除它们。文档中的一个示例:
df
0 1
0 0.335232 -1.256177
1 -1.367855 0.746646
2 0.027753 -1.176076
3 0.230930 -0.679613
4 1.261967 0.570967
df.clip(None, 0.5)
0 1
0 0.335232 -1.256177
1 -1.367855 0.500000
2 0.027753 -1.176076
3 0.230930 -0.679613
4 0.500000 0.500000
另外,轴
参数将引用0或1(沿行或列应用)。它根本不引用列
在本例中,您希望删除与异常经度关联的所有记录。为此,您应该使用类似于df.filter
,df.mask
,df.query
,甚至仅仅是布尔索引
:
mask = (df.longitude <= 50.0)
df = df[mask]
mask=(df.longitude,谢谢。看起来我当时误解了这段视频。