R语言 如何防止科学记号

R语言 如何防止科学记号

R编程语言中的科学记号被认为等同于指数格式。科学记号用于以小数形式处理的非常大或小的数字。在R语言中,E型符号被用于此类数字。在这篇文章中,我们将看到如何在R语言编程中防止科学记号。

方法1:使用scipen选项

为了消除整数的指数符号,我们可以使用options()方法进行全局设置,通过设置scipen参数,也就是options(scipen = n)。

Scipen: 当决定以固定符号或指数符号打印数值时,要应用的惩罚。正值偏向于固定符号,负值偏向于科学符号:除非固定符号的宽度超过scipen数字,否则固定符号将被优先考虑。

scipen值是整数提示指数记号的一个指标。为了防止科学记数法的触发,可以使用任何大的正数,以达到所有的实际目的。然而,这种方法会对整个R的配置设置做出改变。

options(scipen=999)

这个选项可以通过使用0作为scipen值来重置。

代码

num = 12383828281831342
print ("original number :")
print (num)
 
# after global setting for
# options
options(scipen = 100, digits = 4)
 
# declaring the number
num = 12383828281831342
print ("Modified number :")
print (num)

输出

[1] "original number :"
[1] 1.238383e+16
[1] "Modified number :"
[1] 12383828281831342

方法2:使用 format() 方法

为了禁用任何函数输出或数字整数的科学选项,可以自定义R中的格式方法。对原始整数进行修改。这消除了数字的自动指数表示法。这种方法可用于我们希望为一个特定的数字消除科学符号,而不是全局设置。

语法: format(number, scientific = FALSE)

返回: 具有完全相同位数的指数型数字。然而,输出结果是作为一个字符变量对象返回的。因此,需要明确地将其转换为整数,以便将其用于进一步的目的。

例1 :

# declaring an integer number
num = 1000000000000
print ("original number")
print (num)
 
print ("modified number")
format(num, scientific = F)

输出

[1] "original number"
[1] 1e+12
[1] "modified number"
[1] "1000000000000"

例2 :

# declaring an exponential number
num =2.21e+09
print ("original number")
print (num)
 
print ("modified number")
format(num, scientific = FALSE)

输出

[1] "original number"
[1] 2.21e+09
[1] "modified number"
[1] "2210000000"

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程