楼主: 仙人掌掌
25112 1

[问答] R语言输出结果中e的含义 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

大专生

10%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
382 点
帖子
25
精华
0
在线时间
33 小时
注册时间
2018-8-1
最后登录
2020-10-20

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我运行程序的时候,结果为2.2e-2,请问这是什么意思呀?是e-2,还是e^(-2)还是10^(-2)
我做了一个判断,结果是这样的:
> 2.2e-2==2.2*10^-2
[1] FALSE
> 2.2e-2<2.2*10^-2
[1] TRUE
> 2.2e-2==2.2*10^(-2)
[1] FALSE
> 2e-2==2*10^-2
[1] TRUE

二维码

扫码加我 拉你入群

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

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


回帖推荐

cheetahfly 发表于2楼  查看完整内容

2.2e-2就是2.2*10^(-2)的意思,也就是科学计数法。你之所以会产生疑问,是因为在计算机中,浮点数的比较有些麻烦,有时会让你摸不着头脑,比如: sqrt(2) ^ 2 == 2 ##[1] FALSE sqrt(2) ^ 2 - 2 ## [1] 4.440892e-16 同理, 2.2e-2 - 2.2 * 10 ^ (-2) [1] -3.469447e-18 这实际上是电脑算法产生的细微误差,如果用"=="或者identical(),可以捕捉到这些细微误差,但如果我们需要忽略这些误差的时候,可以用“all.equal( ...
沙发
cheetahfly 在职认证  发表于 2018-8-25 22:39:20 |只看作者 |坛友微信交流群
2.2e-2就是2.2*10^(-2)的意思,也就是科学计数法。你之所以会产生疑问,是因为在计算机中,浮点数的比较有些麻烦,有时会让你摸不着头脑,比如:
sqrt(2) ^ 2 == 2
##[1] FALSE
sqrt(2) ^ 2 - 2
## [1] 4.440892e-16

同理,
2.2e-2 - 2.2 * 10 ^ (-2)
[1] -3.469447e-18

这实际上是电脑算法产生的细微误差,如果用"=="或者identical(),可以捕捉到这些细微误差,但如果我们需要忽略这些误差的时候,可以用“all.equal()”来避免这些令人尴尬的比较结果,比如:

all.equal(2.2e-2, 2.2 * 10^(-2))
##[1] TRUE

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 19:49