Articles of coma flotante

Extraer el número científico de la cadena

Estoy tratando de extraer números científicos de líneas en un archivo de texto. Algo como Ejemplo: str = ‘Name of value 1.111E-11 Next Name 444.4’ Resultado: [1.111E-11, 444.4] He probado soluciones en otras publicaciones, pero parece que solo funciona para enteros (quizás) >>> [int(s) for s in str.split() if s.isdigit()] [] float () funcionaría pero […]

Numpy float64 vs Python float

Estoy luchando contra algunos problemas de punto flotante en la función read_csv de Pandas. En mi investigación, encontré esto: In [15]: a = 5.9975 In [16]: a Out[16]: 5.9975 In [17]: np.float64(a) Out[17]: 5.9974999999999996 ¿Por qué el float incorporado de Python y el tipo np.float64 de Python está dando resultados diferentes? Pensé que ambos eran […]

Diferencia python entre round e int.

He estado jugando un poco con python por un tiempo y he notado un extraño comportamiento que me hace sentir curioso: ¿cuál es la diferencia entre float(int(n)) y round(n) ? ¿Cuándo debo usar uno, otro o ninguno de ellos?

¿Cómo evitar que la imprecisión de flotación afecte a numpy.arange?

Debido a que numpy.arange () usa ceil((stop – start)/step) para determinar el número de elementos, una pequeña imprecisión flotante (stop = .400000001) puede agregar un valor no deseado a la lista. Ejemplo El primer caso no incluye el punto de parada (previsto) >>> print(np.arange(.1,.3,.1)) [0.1 0.2] El segundo caso incluye el punto de parada (no […]

Para cada fila de marcos de datos, obtenga los valores top-n y los índices de columna donde ocurren

Tengo una matriz de 1000×1000 (de números de punto flotante) como dataframe. Las columnas y las filas son 0-1000. Para cada fila, quiero los 10 valores más altos y su información de índice. Esto resulta ser más difícil de lo que pensé al principio: for row, index in df.iterrows(): temp_row = row.copy() sort_row = temp_row.sort() […]

conversión de float a decimal en python-2.6: cómo hacerlo y por qué no lo hicieron

La conversión directa de float a decimal se implementó en python-2.7, tanto en el constructor de decimal como con el método de clase Decimal.from_float (). Python-2.6 en su lugar lanza un TypeError que sugiere convertir primero a la cadena: TypeError: Cannot convert float to Decimal. First convert the float to a string así que mi […]

numpy.reciprocal devuelve valores diferentes cuando se llama repetidamente

Tengo una matriz ssh_sum : >>> ssh_sum array([[ 0., 2., 1., 0., 0., 0.], [ 0., 0., 1., 2., 0., 0.], [ 0., 0., 0., 1., 0., 2.]]) Quería calcular los valores recíprocos de los elementos en esta matriz. Numpy devuelve valores diferentes cuando llamo np.reciprocal repetidamente: >>> ssh_sum array([[ 0., 2., 1., 0., 0., […]

Comportamiento de punto flotante en Python 2.6 vs 2.7

Así que saco el intérprete de Python 2.6 y obtengo esto: Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2 Type “help”, “copyright”, “credits” or “license” for more information. >>> 2.1 2.1000000000000001 >>> 2.2 2.2000000000000002 >>> 2.2 2.2000000000000002 Sin embargo, en Python 2.7 obtengo resultados más parecidos a los […]

orden de creación de ID de objeto float ()

float(1.0) is float(1.0) #True float(1) is float(1) #False He aislado la rareza float () aquí para el orden de creación del objeto, porque x1 = float(1) x2 = float(1) x1 is x2 #False id(x1) == id(x2) #False y1 = float(1.0) y2 = float(1.0) y1 is y2 #True id(y1) == id(y2) #True Nota: He hecho controles […]

Cómo llegar a la matriz unitaria desde numpy.dot (A, A_inv)

Preparo una matriz de números aleatorios, calculo su inverso y la matriz lo multiplico con la matriz original. Esto, en teoría, da la matriz unitaria. ¿Cómo puedo dejar que numpy haga eso por mí? import numpy A = numpy.zeros((100,100)) E = numpy.zeros((100,100)) size = 100 for i in range(size): for j in range(size): A[i][j]+=numpy.random.randint(10) if […]