我运行程序的时候,结果为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
楼主: 仙人掌掌
|
25112
1
[问答] R语言输出结果中e的含义 |
大专生 10%
-
|
回帖推荐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( ...
| ||
京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明 免责及隐私声明