全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2875 6
2014-04-11
> 0.9 == (1.1-0.2)
[1] FALSE

为什么,请教,谢谢!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-4-11 11:17:55
0.9, 1.0 , 0.2这些都是 十进制

计算机 运算用的是 二进制,  用二进制表示浮点数(有小数),如0.1 会表示为0.0001100110011001100110011001100110011001100110011001…无限循环, 而如果64位,就是要舍弃一些53位后面的所有数字。
也带来了 运算中的精度问题

之前也觉得奇怪,哈哈
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-11 11:28:18
感觉R的内部算法还是有点问题,比如这种涉及到零点几的减法的时候,比如1-0.3-0.5-0.2;还有大数字间计算,比如3^34各位明明应该是9的。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-11 11:29:08
其他语言都还好。。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-11 13:10:12
明白了,谢谢专家
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-11 13:23:01
这个应该是精度的问题,刚刚试了下
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群