r - R中的求和函数没有给出预期的答案
问题描述
我刚开始使用 R 并被困在这个错误上。
fuel_efficiency<-c(28.2, 28.3, 28.4, 28.5, 29.0)
mean=28.48
deviation<-(fuel_efficiency-mean)
deviation
sum(deviation)
我编写了这段代码来从燃油效率向量的元素中减去平均值以获得偏差向量。然后我试图得到更新的偏差向量的总和。
总和答案应该返回 0 而是给出类似-3.552714e-15
偏差向量按预期正确打印。
#[1] -0.28 -0.18 -0.08 0.02 0.52
解决方案
这只是舍入错误,-3.552714e-15
是一个非常非常小的数字:计算机在处理十进制数字方面是出了名的差,(甚至可以说他们只是不能准确地做到这一点)。为了克服这个问题,R 提供了一个检查相等性的函数:
all.equal(sum(deviation), 0)
这将返回:
[1] TRUE
推荐阅读
- java - 仅仅为了可读性而创建常量变量可以吗?
- macos - 删除coredata列表项时SwiftUI App崩溃EXC_BAD_ACCESS错误
- reactjs - 你如何确保每次单击 React Router 链接时,它确保组件以特定状态呈现(通过父级)?
- javascript - 提交表单firestore for web后如何重定向到新创建的文档页面
- c++ - OpenCV 未定义对 `cv::imread(cv::String const&, int)' 的引用
- javascript - 如何防止单击其他按钮上的表单提交而不是 JavaScript 中的提交按钮
- javascript - 在nestJs异步函数中抛出HttpException
- laravel - 如何在控制器中打印 foreach 循环内容?
- flutter - Flutter 中使用地图和枚举来管理和存储数据
- python - 在 django、pycharm 中找不到页面?