Función redonda en Python

Publicado: 2023-01-03

Tabla de contenido

Introducción a Python:

Python es un lenguaje de programación de alto nivel. Es un lenguaje de código abierto, lo que significa que cualquier persona puede acceder a él. Es un lenguaje ampliamente utilizado que se está volviendo muy popular en estos días debido a su uso global en las empresas. Las empresas prefieren usar Python porque tiene la capacidad de obtener una comprensión precisa y profunda de los datos. Python tiene muchas formas poderosas para el almacenamiento y la manipulación del conjunto de datos. En este lenguaje, no hay necesidad de declarar una variable o asignar ningún tipo a una variable, ya que se asignará automáticamente una vez que escriba una variable, lo que significa que es un lenguaje dinámico y tecleado que diferencia automáticamente entre los diferentes valores que se asignan. Los números con un punto se tratarán como de tipo "flotante" y los números sin ningún punto se tratarán como de tipo "entero". El uso de dicho lenguaje proporciona muchos beneficios, uno de ellos es que no necesita preocuparse por las conversiones de tipo. Python tiene muchas ventajas en comparación con otros lenguajes de programación:

  • Tiene una sintaxis simple que es similar al idioma inglés.
  • También permite escribir unas pocas líneas de código, lo cual es muy útil para los desarrolladores, en lugar de escribir grandes códigos en este lenguaje que se pueden hacer con unas pocas líneas de sintaxis.
  • Python es un lenguaje orientado a objetos.
  • La sangría es muy importante en este idioma. La sangría es útil para la legibilidad del código y ayuda a comprender cómo se ejecutará el bloque de código. Todos los bloques de código necesitan una sangría. No hay necesidad de llaves ni declaraciones finales como otros lenguajes de programación.

Consulte nuestros cursos de ciencia de datos para mejorar sus habilidades.

¿Qué se puede hacer con Python?

  • Python tiene muchas aplicaciones. Algunos de ellos son desarrollo web, desarrollo de software y secuencias de comandos del sistema.
  • Python es útil en la creación de aplicaciones web.
  • Python se puede utilizar para crear flujos de trabajo. Tiene la propiedad de conectarse al sistema de base de datos y luego puede leer los archivos en el sistema y realizar modificaciones en estos archivos.
  • Python es muy útil cuando necesitamos manejar grandes datos, ya que puede realizar varias matemáticas complejas cuando sea necesario.
  • Python ayuda a los ingenieros a convertir un concepto en un elemento funcional.

Funciones integradas de Python:

Estamos familiarizados con el término Big Data y la ciencia de datos que juega un papel vital en el mundo actual. Muchas organizaciones están trabajando en big data para influir en sus datos para tomar buenas decisiones basadas en el análisis o la predicción realizada a partir de los datos que no se utilizaron en el pasado. Python está siendo utilizado por las empresas para realizar varias funciones en los datos para encontrar patrones y tomar buenas decisiones basadas en eso. El conjunto de datos puede estar sesgado y un analista debe tener esto en cuenta al tratar con los datos para evitar errores costosos. Por lo tanto, utilizamos varias técnicas para evitar errores en los datos, que pueden crear cualquier tipo de perturbación en la construcción del modelo. Para eso, usamos numerosas funciones y algunas de ellas son funciones integradas de Python.

Python tiene algunas funciones integradas muy útiles para propósitos computacionales. Hay varias funciones como la división de enteros, el valor absoluto, los números complejos y el módulo. Una de esas funciones es round(), que es muy útil cuando se trata de números de punto flotante. El redondeo en Python es diferente al que encontramos al realizar las funciones aritméticas en matemáticas. Esto se puede atribuir al hecho de que mientras realizamos cálculos matemáticos normales, hacemos uso del sistema decimal que se basa en el número 10, mientras que, en contraste con esto, las computadoras procesan y almacenan cada número entero en el formato de número binario, es decir, “0 " y 1". Por lo tanto, es posible que no terminemos viendo los resultados que anticipábamos al hacer uso de la función de ronda en Python. Por lo tanto, debemos entender que la función de redondeo en Python genera una salida según una estrategia de redondeo específica, que podría no generar el resultado esperado para una situación particular para la que se utilizó. La función básica de la función redonda es devolver un número flotante.

¿Cuánto impacto tiene el redondeo?

Suponga que tiene un día eminentemente bueno y encuentra $100 en el suelo. En lugar de desembolsar todo su dinero de una sola vez, piensa en invertir una cierta cantidad en la compra de acciones de múltiples acciones.

Y también sabe que el valor de las acciones depende completamente de la oferta y la demanda. Cuanta más gente intente comprar una acción en particular, más aumentará gradualmente el valor de esa acción. Y el valor de las acciones puede cambiar cada segundo en función de su demanda en el mercado.

Ahora es el momento de un experimento. Diseminemos el valor de todas nuestras acciones que se compran y luego registremos sus fluctuaciones por un número aleatorio cada segundo, en algún lugar entre $ 0.05 y $ 0.06. La variación mencionada puede no ser un valor muy agradable con dos decimales. Considere un ejemplo en el que el valor total aumenta $0,036332 en un segundo y disminuye $0,022223 en el siguiente segundo.

Ahora, si no necesitamos hacer un seguimiento del quinto y sexto lugar decimal, podemos tomar la decisión de eliminar el dígito que sigue al tercer lugar decimal. Este método es bien conocido como truncar el dígito. Aquí se puede anticipar un error, pero al retener solo tres decimales, este error podría ser de menor importancia. Para conocer un poco más este escenario, veamos cómo funciona la función truncar().

Digamos, por ejemplo, que tenemos un número n. Entonces, truncate() funcionará en este número moviendo el punto decimal hacia la derecha hasta tres lugares al multiplicar el número n por 1000. Después de la multiplicación, obtenemos un nuevo número que se toma como int(). Finalmente, volvemos a dividir el número por 1000 y desplazamos el punto decimal hacia la izquierda.

Ahora, definamos los parámetros primarios para la suposición. Ahora necesitaremos dos variables, una de ellas para rastrear el valor real de nuestras acciones una vez que finalice la simulación y otra para el valor de nuestras acciones después de haber estado recortando a tres puntos decimales en cada paso.

Inicializaremos las variables a 100 con la ayuda de la siguiente sintaxis:

Y ahora la simulación se ejecuta durante 1.000.000 segundos (11,5 días aprox.). La simulación se llevará a cabo en un bucle. Recorrerá el rango de números entre 999 y 0. El valor se guardará en la variable en cada paso del valor tomado de range(). Se generará un número aleatorio entre -0,5 y 0,5 en cada paso del ciclo utilizando random.randn() y este número se asignará a la variable randn. El valor de la inversión ahora se calculará sumando el valor real a randn, y luego agregaremos randn al valor truncado. Obtendremos el total truncado y este valor total se truncará usando truncate().

Observamos la variable valor_actual después de ejecutar el ciclo; solo perdemos alrededor de $3.55. Sin embargo, si observamos el valor truncado, parece que se ha perdido la cantidad total.

Nota: La función random.seed() que se usó en el ejemplo mencionado anteriormente está involucrada en la inicialización del número pseudo_aleatorio. Por lo tanto, la salida se puede reproducir.

Podemos observar claramente la diferencia en los resultados después de usar round() y truncate().

La forma en que usamos la función de redondeo es muy importante y, como desarrolladores de software, debemos comprender cuáles son los problemas comunes y cómo manejarlos. Entonces, estudiemos los diferentes métodos para redondear un valor y cómo se puede implementar en Python.

REDONDEO A LA MITAD DEL CERO:

Cuando echamos un vistazo más de cerca a round_half_up() y round_half_down() , notamos que ninguno de ellos es simétrico alrededor de cero. La simetría se puede introducir redondeando un empate lejos de cero.

Empezamos desplazando el punto decimal a la derecha. Luego echamos un vistazo al dígito d inmediatamente a la derecha del lugar decimal en este nuevo número. Hay cuatro casos para este escenario:

  1. Si n es positivo y d >= 5 , entonces redondea el valor hacia arriba
  2. Si n es positivo y d < 5 , entonces redondea el valor hacia abajo
  3. Si n es negativo y d >= 5 , entonces redondea el valor hacia abajo
  4. Si n es negativo y d < 5 , entonces redondea el valor hacia arriba

Después de redondear según el método anterior, desplazamos el decimal hacia la izquierda.

REDONDEO DE LA MITAD A PAR:

Una forma de evitar el sesgo de redondeo cuando los valores de redondeo en un conjunto de datos se redondean al número par más cercano. Veamos algunos ejemplos a continuación:

La función round() está libre de sesgos, pero no es perfecta. Pero aún se puede introducir un sesgo de redondeo si la mayoría de los valores en el conjunto de datos se redondean al alza en lugar de redondear a la baja. La "estrategia de redondeo de la mitad a par" se utiliza en la función integrada de Python round().

Solicite el programa Executive PG en ciencia de datos

RESUMEN:

  • Ahora, hemos pasado por varios métodos de redondeo en Python. Hay mejores prácticas para redondear los datos del mundo real.
  • Podemos usar el redondeo en marcos de datos numpy y pandas.
  • Puede haber errores de redondeo, pero para eso, tenemos varias formas diferentes de redondear los valores y evitar esos errores.
¿Quieres compartir este articulo?

Prepárese para una carrera del futuro

Solicitar Maestría en Ciencias en Ciencia de Datos