冷回清风暖 发表于 2021-2-20 09:13:54

pandas 无法判断元素是否等于-1


数据里面明显有-1 为什么判断不出来呢

wp231957 发表于 2021-2-20 09:20:40

计算机中 所有涉及到浮点数的 都不能用==!=来判断的

Python初学者8号 发表于 2021-2-20 10:09:42

wp231957 发表于 2021-2-20 09:20
计算机中 所有涉及到浮点数的 都不能用==!=来判断的

>>> 1.0 != 1
False
>>> -1.000000 == -1
True
>>>

啊 不是吧{:10_266:}

冷回清风暖 发表于 2021-2-20 10:15:44

Python初学者8号 发表于 2021-2-20 10:09
啊 不是吧

搞不清楚,可能是我数据问题

来自星星的小明 发表于 2021-2-20 10:16:27

计算机中浮点格式是一种数据结构,==, != 的比较会存在误差
你可以这样写:
conl = df1['casa_avg'].map(lambda x:abs(-1-x)>0.001)

来自星星的小明 发表于 2021-2-20 10:23:41

Python初学者8号 发表于 2021-2-20 10:09
啊 不是吧

你可以试试:
print((0.1+0.2)==0.3)

Minecraft程序猿 发表于 2021-2-20 10:37:43

Python初学者8号 发表于 2021-2-20 10:09
啊 不是吧

你需要先把它转为float

Python初学者8号 发表于 2021-2-20 16:39:10

来自星星的小明 发表于 2021-2-20 10:23
你可以试试:
print((0.1+0.2)==0.3)

原来如此,这个确实是的。冒昧请教一下,如果是这样,像楼主的情况一样,应该怎么判断print((0.1+0.2)==0.3)是相等呢{:10_297:}

Python初学者8号 发表于 2021-2-20 16:39:48

Minecraft程序猿 发表于 2021-2-20 10:37
你需要先把它转为float

又是你!!姚志鹏{:10_279:}

Minecraft程序猿 发表于 2021-2-20 16:46:44

Python初学者8号 发表于 2021-2-20 16:39
又是你!!姚志鹏

我不是这个名...

来自星星的小明 发表于 2021-2-20 16:59:02

Python初学者8号 发表于 2021-2-20 16:39
原来如此,这个确实是的。冒昧请教一下,如果是这样,像楼主的情况一样,应该怎么判断是相等呢

你可以看看5楼

Python初学者8号 发表于 2021-2-20 18:10:26

来自星星的小明 发表于 2021-2-20 16:59
你可以看看5楼

好的 谢谢哈

Python初学者8号 发表于 2021-2-20 18:10:57

Minecraft程序猿 发表于 2021-2-20 16:46
我不是这个名...

顽梗 玩梗嘿嘿

Minecraft程序猿 发表于 2021-2-20 21:48:55

Python初学者8号 发表于 2021-2-20 18:10
顽梗 玩梗嘿嘿

你叫什么⊙▽⊙{:10_256:}

来自星星的小明 发表于 2021-2-22 12:03:25

Python初学者8号 发表于 2021-2-20 18:10
好的 谢谢哈

太客气了,都是互相学习嘛{:10_297:}
页: [1]
查看完整版本: pandas 无法判断元素是否等于-1