修复 R 中的浮点错误 - MDMR 包显示近似不等式而不是精确答案的错误

Fixing floating point error in R - error with MDMR package displaying approximate inequality rather than precise answer

提问人:AldehydeDeva 提问时间:7/4/2019 更新时间:7/4/2019 访问量:61

问:

我正在使用 R 中最新版本的 MDMR 包来分析一组自变量和因变量之间是否存在显着关系。但是,当我执行如下操作时:

library(MDMR)
results<-mdmr(X=predictor_variable,D=distance_matrix)

我得到 0.00199799899899874826986 作为输出 p 值。 但是,当我稍后尝试用 显示它时,它会显示 ,如果我尝试将值分配给变量,则会被赋值。我认为这是 R 中计算中的浮点错误,但对如何修复它一无所知。summary(results)<0.0020

r 浮点 精度 多变量检验

评论

0赞 Tim Biegeleisen 7/4/2019
浮点运算在 R(或实际上任何其他编程语言)中并不精确。
1赞 Eric Postpischil 7/4/2019
@TimBiegeleisen:问题中所述的症状并不能构成浮点错误的主要证据。第一个抱怨,即一个输出是“0.0019979...”但显示“<0.002”,似乎是显示问题,而不是抱怨预期使用不同的数值。第二个抱怨,赋值给变量产生零,不是由浮点不精确引起的错误(.002 不会通过浮点舍入更改为 0),而是可能是某种转换为整数类型(在 C 中常见赋值,但我不知道这在 R 中是如何产生的)。summary(results)

答: 暂无答案