me gustaría find
y convert
todas las cadenas de notación científica en un archivo csv a notación decimal, por ejemplo .:¿Cómo convertir una cadena de notación científica a notación decimal?
1.0e-05 to 0.00001
¿Cómo puedo hacer que en Ruby?
me gustaría find
y convert
todas las cadenas de notación científica en un archivo csv a notación decimal, por ejemplo .:¿Cómo convertir una cadena de notación científica a notación decimal?
1.0e-05 to 0.00001
¿Cómo puedo hacer que en Ruby?
Simplemente use la conversión de cadenas. La coerción necesaria para flotar se realizará automáticamente:
"%f" % "1.0e-05"
=> "0.000010"
# Which, behind the scenes is the same as:
"%f" % "1.0e-05".to_f
=> "0.000010"
Ajuste según sea necesario para obtener más o menos precisión. Por ejemplo:
"%.5f" % "1.0e-05"
=> "0.00001"
Si usted desea conseguir la suposición real y cortar los ceros innecesarios al final, aquí está una manera. (Esperemos que alguien le sugiere algo más elegante, no podía pensar en otra cosa):
("%.20f" % "1.0e-05").sub(/\.?0*$/, "")
=> "0.00001"
Si usted está interesado en hacer cualquier clase de matemáticas en un número y que es demasiado pequeño:
"%f" % "1.0e-10"
=> "0.000000"
# not so good for various reasons
("%f" % "1.0e-10") == ("%f" % "1.0e-8")
=> true
Puede utilizar BigDecimal:
BigDecimal.new "1.0e-10"
=> #<BigDecimal:7ffdf6c38678,'0.1E-9',9(18)>