Articles of redondeo

División redondeada por potencia de 2.

Estoy implementando un algoritmo de cuantización de un libro de texto. Estoy en un punto en el que las cosas funcionan bastante bien, excepto que recibo errores off-by-one al redondear. Esto es lo que el libro de texto tiene que decir al respecto: La división redondeada por 2^p se puede llevar a cabo agregando un […]

Redondear en cantidad al paso más cercano

Me gustaría saber cómo puedo redondear un número en número a un umbral superior o inferior que es función de un tamaño de paso predefinido. Esperemos que se indique de una manera más clara, si tengo el número 123 y un tamaño de paso igual a 50, tengo que redondear 123 al más cercano, ya […]

Redondear la mitad hasta el decimal

R por defecto utiliza la mitad redonda para igualar la función round() . Pero no siempre parece ser cierto cuando se redondea a un número definido de lugares decimales: # R code round(1.225,2) #[1] 1.23 round(1.2225,3) #[1] 1.222 round(1.22225,4) #[1] 1.2223 round(1.222225,5) #[1] 1.22222 Comparando con python, usando el módulo decimal: # Python code import […]

Comportamiento de la función “redonda” en Python

¿Podría alguien explicarme este pice de código: >>> round(0.45, 1) 0.5 >>> round(1.45, 1) 1.4 >>> round(2.45, 1) 2.5 >>> round(3.45, 1) 3.5 >>> round(4.45, 1) 4.5 >>> round(5.45, 1) 5.5 >>> round(6.45, 1) 6.5 >>> round(7.45, 1) 7.5 >>> round(8.45, 1) 8.4 >>> round(9.45, 1) 9.4 Actualizado Supongo que es debido a la representación […]

¿Redondeando en numpy?

Tengo un problema extraño con los pandas python y numpy. >>> np.float64(1) * np.float64(85000) * np.float64(7.543709) 641215.26500000001 >>> round( np.float64(1) * np.float64(85000) * np.float64(7.543709), 2 ) 641215.26000000001 >>> np.round( np.float64(1) * np.float64(85000) * np.float64(7.543709), 2 ) 641215.26000000001 ¿Cómo redondear para obtener el resultado correcto 641215.27?

Problemas con redondear decimales (python)

En mi progtwig, la precisión decimal es muy importante. Muchos de mis cálculos deben ser precisos con muchos decimales (como 50). Debido a que estoy usando python, he estado usando el módulo decimal (con context (). Prec = 99. es decir, configurado para tener 99 lugares decimales de precisión al crear una instancia de un […]

Conseguir Ceil () de decimal en python?

¿Hay alguna manera de obtener el mínimo de un Decimal de alta precisión en python? >>> import decimal; >>> decimal.Decimal(800000000000000000001)/100000000000000000000 Decimal(‘8.00000000000000000001’) >>> math.ceil(decimal.Decimal(800000000000000000001)/100000000000000000000) 8.0 Matemáticas redondea el valor y devuelve un valor no preciso

Python 3 división extraña

Alrededor de media hora pensando “¿Qué estoy haciendo mal?” en el código de 5 líneas … porque Python3 de alguna manera está redondeando grandes enteros. Alguien sabe por qué hay un problema como: Python2: int(6366805760909027985741435139224001 # This is 7**40. / 7) == 909543680129861140820205019889143 # 7**39 Python3: int(6366805760909027985741435139224001 / 7) == 909543680129861204865300750663680 # I have no […]

Cómo rellenar una cadena con ceros en Python 3

Estoy intentando hacer length = 001 en Python 3, pero cada vez que bash imprimirlo, trunca el valor sin los ceros iniciales ( length = 1 ). ¿Cómo evitaría que esto suceda sin tener que convertir la length en una cadena antes de imprimirla?

¿Cómo eliminar el signo menos extra al redondear números negativos hacia cero en números?

Tengo una pregunta simple acerca de las funciones de fix y floor en numpy . Al redondear los números negativos que son más grandes que -1 hacia cero, los numpy redondean correctamente a cero, sin embargo, deja un signo negativo. Este signo negativo interfiere con mi disfraz de función unique_rows ya que usa la ascontiguousarray […]