Articles of punto flotante

¿Por qué fmod (1.0,0.1) == .1?

Primero experimenté este fenómeno en Python, pero resultó que es la respuesta común, por ejemplo, MS Excel da esto. Wolfram Alpha da una interesante respuesta esquizoide, donde dice que la aproximación racional de cero es 1/5. ( 1.0 mod 0.1 ) Por otro lado, si implemento la definición a mano, me da la respuesta ‘correcta’ […]

Máquina Epsilon En Python

Un manual que estoy estudiando actualmente (soy un novato) dice: “Los números que difieren en menos de epsilon de la máquina son numéricamente iguales” Con Python, la máquina epsilon para valores flotantes se puede obtener escribiendo eps = numpy.finfo(float).eps Ahora, si compruebo 1 + eps/10 != 1 Obtengo Falso. Pero si lo compruebo 0.1 + […]

Implementación de funciones logísticas / sigmoideas de precisión numérica.

En scipy.special.expit , la función logística se implementa como la siguiente: if x < 0 a = exp(x) a / (1 + a) else 1 / (1 + exp(-x)) Sin embargo, he visto implementaciones en otros lenguajes / marcos que simplemente hacen 1 / (1 + exp(-x)) Me pregunto cuánto beneficio realmente trae la versión […]

¿Lectura de 32 bits con signo ieee 754 puntos flotantes de un archivo binario con python?

Tengo un archivo binario que es simple una lista de números de coma flotante ieee754 de 32 bits firmados. No están separados por nada, y simplemente aparecen uno tras otro hasta EOF. ¿Cómo podría leer este archivo e interpretarlos correctamente como números de punto flotante? Intenté usar read(4) , pero los convierte automáticamente en una […]

¿La forma más rápida de poner a cero los valores bajos en la matriz?

Entonces, digamos que tengo 100,000 arreglos flotantes con 100 elementos cada uno. Necesito el número X más alto de valores, PERO solo si son mayores que Y. Cualquier elemento que no coincida con esto debe establecerse en 0. ¿Cuál sería la forma más rápida de hacerlo en Python? El orden debe mantenerse. La mayoría de […]

Salida de diferente precisión por columna con pandas.DataFrame.to_csv ()?

Pregunta ¿Es posible especificar una precisión flotante específicamente para cada columna que se imprimirá con el método del paquete pandas Python pandas.DataFrame.to_csv ? Fondo Si tengo un dataframe de pandas que se organiza así: In [53]: df_data[:5] Out[53]: year month day lats lons vals 0 2012 6 16 81.862745 -29.834254 0.0 1 2012 6 16 […]

¿Cuáles son todos los cálculos posibles que podrían causar un NaN en Python?

He estado buscando y parece que hay discusiones dispersas sobre los NaN en diferentes lenguajes de progtwigción, incluidos algunos casos específicos, pero nada exhaustivo o claro. ¿Cuáles son las operaciones más comunes que podrían causar un NaN , en Python, que se originan al trabajar con NumPy o SciPy?

Compruebe si el flotador está cerca de cualquier flotador almacenado en la matriz

Necesito verificar si un flotador determinado está cerca, dentro de una tolerancia determinada, a cualquier flotador en una serie de flotadores. import numpy as np # My float a = 0.27 # The tolerance t = 0.01 # Array of floats arr_f = np.arange(0.05, 0.75, 0.008) ¿Hay una manera simple de hacer esto? Algo como […]

Convertir un flotador en una cuerda sin redondearlo

Estoy creando un progtwig que, por razones que no es necesario explicar, requiere que un float se convierta en una cadena para que se cuente con len (). Sin embargo, str (float (x)) hace que x se redondee cuando se convierte en una cadena, lo que desactiva todo. ¿Alguien sabe de una solución para ello? […]

Logaritmo inexacto en Python

Trabajo diariamente con Python 2.4 en mi empresa. Utilicé la versátil función de logaritmo ‘log’ de la biblioteca matemática estándar, y cuando ingresé log (2 ** 31, 2) devolví 31.000000000000004, lo que me pareció un poco extraño. Hice lo mismo con otros poderes de 2, y funcionó perfectamente. Corrí ‘log10 (2 ** 31) / log10 […]