Fonction ronde en Python

Publié: 2023-01-03

Table des matières

Présentation de Python :

Python est un langage de programmation de haut niveau. C'est un langage open-source, ce qui signifie qu'il est accessible à tous. C'est un langage largement utilisé qui devient très populaire de nos jours en raison de son utilisation mondiale dans les entreprises. Les entreprises préfèrent utiliser Python car il a la capacité d'acquérir une compréhension précise et approfondie des données. Python dispose de nombreux moyens puissants pour le stockage et la manipulation de l'ensemble de données. Dans ce langage, il n'est pas nécessaire de déclarer une variable ou d'affecter un type à une variable, car elle sera affectée automatiquement une fois que vous aurez saisi une variable, ce qui signifie qu'il s'agit d'un langage typé dynamique qui différencie automatiquement les différentes valeurs affectées. Les nombres avec un point seront traités comme du type "flottant" et les nombres sans point seront traités comme du type "entier". L'utilisation d'un tel langage offre de nombreux avantages, l'un d'entre eux étant que vous n'avez pas à vous soucier des conversions de type. Python présente de nombreux avantages par rapport aux autres langages de programmation :

  • Il a une syntaxe simple qui est similaire à la langue anglaise.
  • Cela permet également d'écrire quelques lignes de code, ce qui est très utile pour les développeurs, au lieu d'écrire de gros codes dans ce langage qui peuvent se faire avec quelques lignes de syntaxe.
  • Python est un langage orienté objet.
  • L'indentation est très importante dans cette langue. L'indentation est utile pour la lisibilité du code et aide à comprendre comment le bloc de code sera exécuté. Tous les blocs de code ont besoin d'une indentation. Il n'y a pas besoin d'accolades ni d'instructions endif comme les autres langages de programmation.

Consultez nos cours de science des données pour vous perfectionner.

Que peut faire Python ?

  • Python a de nombreuses applications. Certains d'entre eux sont le développement Web, le développement de logiciels et les scripts système.
  • Python est utile dans la création d'applications Web.
  • Python peut être utilisé pour créer des workflows. Il a la propriété de se connecter au système de base de données, puis il peut lire les fichiers du système et effectuer des modifications sur ces fichiers.
  • Python est très utile lorsque nous devons traiter des mégadonnées car il peut effectuer diverses mathématiques complexes chaque fois que nécessaire.
  • Python aide les ingénieurs à transformer un concept en un élément fonctionnel.

Fonctions intégrées Python :

Nous connaissons le terme Big Data et la science des données jouant un rôle vital dans le monde d'aujourd'hui. De nombreuses organisations travaillent sur le Big Data pour influencer leurs données afin de prendre de bonnes décisions basées sur l'analyse ou la prédiction effectuée à partir des données qui n'étaient pas utilisées dans le passé. Python est utilisé par les entreprises pour exécuter diverses fonctions sur les données afin de trouver des modèles et de prendre de bonnes décisions en fonction de cela. L'ensemble de données peut être biaisé et un analyste doit garder cela à l'esprit lorsqu'il traite les données pour éviter toute erreur coûteuse. Ainsi, nous utilisons diverses techniques pour éviter toute erreur dans les données, ce qui peut créer toute sorte de perturbation dans la construction du modèle. Pour cela, nous utilisons de nombreuses fonctions et certaines d'entre elles sont des fonctions intégrées à Python.

Python a des fonctions intégrées très utiles à des fins de calcul. Il existe diverses fonctions comme la division entière, la valeur absolue, les nombres complexes et le module. L'une de ces fonctions est round(), qui est très pratique lorsqu'il s'agit de nombres à virgule flottante. L'arrondi en Python est différent de celui que nous rencontrons lors de l'exécution des fonctions arithmétiques en mathématiques. Cela peut être attribué au fait que lors de l'exécution de calculs mathématiques normaux, nous utilisons le système décimal basé sur le nombre 10, alors qu'à l'inverse, les ordinateurs traitent et stockent chaque nombre entier au format binaire, c'est-à-dire "0 " et 1". Ainsi, nous pourrions ne pas voir les résultats que nous avions anticipés en utilisant la fonction round en Python. Par conséquent, nous devons comprendre que la fonction round en Python donne une sortie selon une stratégie d'arrondi spécifique, qui pourrait ne pas donner le résultat attendu pour une situation particulière pour laquelle elle a été utilisée. La fonction de base de la fonction round est de renvoyer un nombre flottant.

Quel impact l'arrondi a-t-il ?

Supposons que vous passiez une très bonne journée et que vous trouviez 100 $ par terre. Au lieu de dépenser tout votre argent d'un seul coup, vous pensez investir un certain montant dans l'achat d'actions de plusieurs actions.

Et vous savez également que la valeur des actions dépend entièrement de l'offre et de la demande. Plus les gens essaient d'acheter une action particulière, plus la valeur de cette action augmente progressivement. Et la valeur des actions peut changer à chaque seconde en fonction de leur demande sur le marché.

Maintenant, place à une expérience. Dissimulons la valeur de toutes nos actions achetées, puis enregistrons leurs fluctuations par un nombre aléatoire chaque seconde, quelque part entre 0,05 $ et 0,06 $. La variation mentionnée peut ne pas être une très bonne valeur avec deux décimales. Prenons un exemple dans lequel la valeur globale augmente de 0,036332 $ à une seconde et diminue de 0,022223 $ à la seconde suivante.

Maintenant, si nous n'avons pas besoin de garder une trace de la cinquième et de la sixième décimale, nous pouvons prendre la décision de couper le chiffre suivant la troisième décimale. Cette méthode est bien connue sous le nom de troncature du chiffre. Une erreur peut ici être anticipée, mais en ne retenant que trois décimales, cette erreur pourrait être de moindre importance. Pour en savoir un peu plus sur ce scénario, voyons comment fonctionne la fonction truncate().

Disons, par exemple, que nous avons un nombre n. Ainsi, truncate() va travailler sur ce nombre en déplaçant la virgule vers la droite jusqu'à trois positions en multipliant le nombre n par 1000. Après multiplication, on obtient un nouveau nombre qui est pris comme int(). Enfin, nous divisons à nouveau le nombre par 1000 et décalons la virgule vers la gauche.

Maintenant, définissons les principaux paramètres de l'hypothèse. Nous aurons maintenant besoin de deux variables, l'une pour suivre la valeur réelle de nos actions une fois la simulation terminée et l'autre pour la valeur de nos actions après avoir réduit à trois décimales à chaque étape.

Nous allons initialiser les variables à 100 à l'aide de la syntaxe ci-dessous :

Et maintenant, la simulation est exécutée pendant 1 000 000 secondes (11,5 jours environ). La simulation se déroulera en boucle. Il bouclera sur la plage de nombres entre 999 et 0. La valeur sera enregistrée dans la variable à chaque étape de la valeur extraite de range(). Un nombre aléatoire sera généré entre -0,5 et 0,5 à chaque étape de la boucle en utilisant random.randn() et ce nombre sera attribué à la variable randn. La valeur de l'investissement sera maintenant calculée en ajoutant la valeur réelle au randn, puis nous ajouterons le randn à la valeur tronquée. Nous obtiendrons le total tronqué et cette valeur totale sera ensuite tronquée en utilisant truncate().

Nous observons la variable actual_value après avoir exécuté la boucle ; nous ne perdons qu'environ 3,55 $. Cependant, si nous regardons la valeur tronquée, il semble que tout le montant ait été perdu.

Remarque : La fonction random.seed() qui a été utilisée dans l'exemple mentionné ci-dessus est impliquée dans l'ensemencement du nombre pseudo_aléatoire. Ainsi, la sortie peut être reproduite.

Nous pouvons clairement observer la différence dans les résultats après avoir utilisé round() et truncate().

La façon dont nous utilisons la fonction d'arrondi est très importante et, en tant que développeur de logiciels, nous devons comprendre quels sont les problèmes courants et comment les gérer. Alors, étudions différentes méthodes pour arrondir une valeur et comment elle peut être implémentée en Python.

ARRONDI À LA MOITIÉ DE ZÉRO :

Lorsque nous examinons de plus près round_half_up() et round_half_down() , nous remarquons qu'aucun d'eux n'est symétrique autour de zéro. La symétrie peut être introduite en arrondissant une égalité à partir de zéro.

On commence par décaler la virgule vers la droite. Ensuite, nous regardons le chiffre d immédiatement à droite de la décimale dans ce nouveau nombre. Il existe quatre cas pour ce scénario :

  1. Si n est positif et d >= 5 , alors arrondissez la valeur
  2. Si n est positif et d < 5 , alors arrondissez la valeur
  3. Si n est négatif et d >= 5 , alors arrondissez la valeur
  4. Si n est négatif et d < 5 , alors arrondissez la valeur

Après avoir arrondi selon la méthode ci-dessus, nous décalons la décimale vers la gauche.

ARRONDI DE LA MOITIE AU PAIR :

Une façon d'éviter le biais d'arrondi lorsque les valeurs d'arrondi dans un jeu de données sont arrondies au nombre pair le plus proche. Voyons quelques exemples ci-dessous :

La fonction round() est exempte de biais, mais elle n'est pas parfaite. Mais un biais d'arrondi peut toujours être introduit si la majorité des valeurs de l'ensemble de données sont arrondies au pair au lieu d'arrondir à l'inférieur. La "stratégie d'arrondir la moitié à pair" est utilisée dans la fonction intégrée Python round().

Postuler pour le programme Executive PG en science des données

RÉSUMÉ:

  • Maintenant, nous avons parcouru différentes méthodes d'arrondi en Python. Il existe des bonnes pratiques pour arrondir les données du monde réel.
  • Nous pouvons utiliser round off dans les trames de données numpy et pandas.
  • Il peut y avoir des erreurs d'arrondi, mais pour cela, nous avons différentes façons d'arrondir les valeurs et d'éviter ces erreurs.
Veux-tu partager cet article?

Préparez-vous à une carrière d'avenir

Postuler pour un Master of Science en Data Science