¿Cómo evitar la notación científica en R?

Las notaciones científicas en lenguaje de programación R se consideran equivalentes a los formatos exponenciales. Las notaciones científicas se utilizan para números que son extremadamente grandes o pequeños para ser manejados en forma decimal. En R Language, la notación E se usa para tales números. En este artículo vamos a ver cómo evitar la notación científica en la programación R.

Método 1: Usar la opción Scipen

Para eliminar la notación exponencial del entero, podemos usar la configuración global usando el método options(), configurando el argumento scipen, es decir, options(scipen = n).

Scipen: una penalización que se aplicará al decidir imprimir valores numéricos en notación fija o exponencial. Los valores positivos sesgan hacia la notación fija y los negativos hacia la notación científica: se preferirá la notación fija a menos que sea más que dígitos scipen más anchos.

El valor de scipen es un indicador de la indicación del entero para la notación exponencial. Para evitar la activación de la notación científica, se puede utilizar cualquier número positivo grande, para todos los fines prácticos. Sin embargo, este método realiza cambios en todos los ajustes de configuración de R.

options(scipen=999)

Esta opción se puede restablecer utilizando 0 como valor de Scipen. 

Código:

R

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)

 
Producción: 

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

Método 2: Usar el método format()

Para deshabilitar la opción científica para cualquier salida de función o entero numérico, se puede personalizar el método de formato en R. Se realiza una modificación al entero original. Esto elimina la representación exponencial automática del número. Este método se puede utilizar en caso de que deseemos eliminar la notación científica para un número específico y no configurarlo globalmente.  

Sintaxis: formato (número, científico = FALSO)

Devuelve: El número exponencial con exactamente el mismo número de dígitos. Sin embargo, la salida se devuelve como un objeto de variable de carácter. Por lo tanto, debe convertirse explícitamente en un número entero para poder usarlo para otros fines. 

Ejemplo 1: 

R

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

Producción:

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

Ejemplo 2:

R

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

Producción

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

Publicación traducida automáticamente

Artículo escrito por codersgram9 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *