R语言 小数点位数的设置方式

时间:2021-11-30 15:23:55

经常用数据分析,有时不同的文件的小数位数不一样,但是我们可以让它们的位数保持一致的,下面的介绍就是设置小数位数。

使用options函数

?
1
> options(digits)

默认为7位

?
1
> a=0.234333323#9位> a[1] 0.2343333

下面开始设置下

?
1
> options(digits=3)> a=0.34434434#8位> a[1] 0.344

看最大的位数

?
1
> options(digits=27)Error in options(digits = 27) : 'digits'参数不对,可用0...22> options(digits=20)> options(digits=22)> options(digits=23)Error in options(digits = 23) : 'digits'参数不对,可用0...22

从上面知道,最多是22位的,下面来实验下。

?
1
> a = 0.111222333444555666777888999#27位> options(digits=22)> a[1] 0.11122233344455566

是的,它的最大位数是22位。

补充:R语言保留小数点后几位(末尾为0也保留)

当我们在进行一些学术论文的表格生成时,需要对我们的数据进行规范化处理。比如保留小数点后四位的操作。

大家用的最多的代码应该就是使用 round() 函数进行保留,具体做法我们以一个数字为例:12.345678。我们想保留小数点后四位可以进行如下操作。

round

运行下述代码,即可得到我们想要的结果:12.3456

?
1
round(12.345678, 4)

但如果我们想要保留这个数字之后的四位:12.345006,此时使用 round(12.345006, 4) 就会得到 12.345 这个结果,那如果我们想得到 12.3450 这种类型的结果,需要如何操作呢?

这时我们就可以使用: sprintf()

sprintf

具体代码如下所示,代码的输出结果就是:12.3450

?
1
sprintf("%0.4f", 12.345006)

上述代码中的 0.4 改为 0.2,就是保留小数点后两位,以此类推。

如果我们还想保留有效数字要怎么做呢?

保留有效数字

其实用 print() 函数即可选择保留几位有效数字,只需使用 digits = 4 即可。例如使用 print(12.3456, digits = 4) ,所得结果是:12.34

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/xxzhangx/article/details/52975311