我正在吸收线性模型的输出,并尝试通过将我感兴趣的参数四舍五入到小数点后两位来整理它。这对于大多数参数(如 beta 或 Z 分数)来说都很好,但我在 P 值方面遇到困难。虽然我确实想四舍五入到小数点后两位,但我的意思是保留科学记数法的同时保留小数点后两位。
例如:
P = 2.60699382414341e-56
round(P,2)
#[1] 0
当我真正想要打印的是:
#2.61e-56
有办法做到这一点吗?
尝试
signif(2.60699382414341e-56, digits=3)
# 2.61e-56
使用
format
:
> P = 2.60699382414341e-56
> format(P, digits=3)
[1] "2.61e-56"
这个就在这里:
> P = 2.60699382414341e-56
> options("scipen"=2, "digits"=3)
> P
[1] 2.61e-56
另请参阅: 强制 R 不使用指数表示法(例如 e+10)?
我还建议使用
sprintf('%.2e', P)
作为 format()
的潜在更快替代方案。