四舍五入至小数点后2位,同时保留R中的科学符号

四舍五入至小数点后2位,同时保留R中的科学符号,r,rounding,R,Rounding,我从线性模型中提取输出,并试图通过将我感兴趣的参数四舍五入到小数点后2位来整理它。这对于大多数参数(如beta或Z-score)来说都很好,但我在处理P值时遇到了困难。虽然我确实想四舍五入到小数点后2位,但我的意思是保留科学记数法的同时保留小数点后2位 例如: P = 2.60699382414341e-56 round(P,2) #[1] 0 当我真正想要打印的是: #2.61e-56 有办法吗?试试看 signif(2.60699382414341e-56,数字=3) 使用格式: &

我从线性模型中提取输出,并试图通过将我感兴趣的参数四舍五入到小数点后2位来整理它。这对于大多数参数(如beta或Z-score)来说都很好,但我在处理P值时遇到了困难。虽然我确实想四舍五入到小数点后2位,但我的意思是保留科学记数法的同时保留小数点后2位

例如:

P = 2.60699382414341e-56

round(P,2)

#[1] 0
当我真正想要打印的是:

#2.61e-56
有办法吗?

试试看

signif(2.60699382414341e-56,数字=3)


使用
格式

> 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
另见:

请看这里:我想你要做的是
轮(第58页)
(但下面的答案更好)谢谢你的快速反应!我看了其他问题,但它们一般都是关于不使用科学符号的。所有这些答案都有效,那么在这种情况下,“接受答案”的约定是什么?不知道。:/最快的?
> P = 2.60699382414341e-56
> options("scipen"=2, "digits"=3)
> P
[1] 2.61e-56