Itération en Python | énumérer (), élément (), par exemple, éditeur (), iterrows ()

Contenu

Cet article a été publié dans le cadre de la Blogathon sur la science des données.

introduction

Une itération est un objet qui répète des tâches identiques ou similaires sans commettre d'erreur. D'une certaine façon, nous pouvons dire que l'exécution répétée d'un ensemble d'instructions est la raison d'être de l'itération. Piton a plusieurs fonctionnalités de langage pour aider à effectuer la tâche d'itération.

Comme objet, l'itérateur compte une série de valeurs qui peuvent être itérées. Les listes, tuples, dictionnaires, les chaînes et les ensembles sont tous des objets itérables. Fils itérables conteneurs à partir duquel vous pouvez obtenir un itérateur.

Dans le prochain sujet, nous verrons un résumé des différents processus d'itération.

Boucle en utilisant énumérer ()

L'utilisation d'une boucle for pour parcourir une liste ne nous donne accès qu'à tous les éléments de la liste à chaque exécution, l'un après l'autre. Si uno además quiere entrar a la data del indice, ensuite, où est l'élément de la liste sur lequel on itère, on peut utiliser énumérer().

Exemple, regarde comment pour La boucle a été convertie en créant une liste de zones:

# liste des zones
zones = [11.25, 18.0, 20.0, 10.75, 9.50]

# Changer la boucle pour utiliser énumérer() et mettre à jour imprimer()
pour x, y dans énumérer(domaines) :
    imprimer("pièce ", str(X), ": ", str(Oui))

Production:

pièce 0: 11.20
pièce 1: 18.0
pièce 2: 20.0
pièce 3: 10.75
pièce 4: 9.5

Boucle sur le dictionnaire – éléments ()

En Python 3, nous avons besoin des articles() méthode pour boucler sur un dictionnaire. A chaque itération, "la capitale de x est y" sera imprimé, où x est la clé et y est la valeur de la paire.
# Définition de dictionnaire
Europe = {'Espagne':'Madrid', 'La France':'Paris', 'Allemagne':'Berlin',
 'Norvège':'Oslo', 'Italie':'Rome', 'Pologne':'Varsovie', 'L'Autriche':'Vienne' }

# Itérer sur l'europe
pour x, y dans europe.items():
    imprimer("la capitale de ", str(X), " est ", str(Oui))

Production:

the capital of norway is oslo
the capital of poland is warsaw
the capital of italy is rome
the capital of spain is madrid
the capital of austria is vienna
the capital of germany is berlin

Boucle sur matrice Numpy – par exemple, éditeur ()

Si nous avons affaire à un tableau Numpy 1D, passer en revue tous les éléments peut être aussi simple que:

pour x dans my_array :

Si nous avons affaire à un tableau Numpy 2D, est plus complexe. Une matrice 2D est composée de plusieurs matrices 1D. Pour itérer explicitement sur tous les éléments distincts d’un tableau multidimensionnel, nous aurons besoin de cette syntaxe:

pour x dans np.nditer(my_array) :

Ensuite, nous écrivons une boucle for qui itére sur tous les éléments de np_height et imprime « x pouces » pour chaque élément, où x est la valeur du tableau.

# Importer numpy en tant que np
importer numpy en tant que np

# Pour boucle sur np_height
pour x dans np_height:
    imprimer(X, "Pouces")

# Pour boucle sur np_baseball
pour n dans np.nditer(np_baseball):
    imprimer(m)

Production:

74 Pouces
74 Pouces
72 Pouces
72 Pouces
73 Pouces
69 Pouces
69 Pouces
71 Pouces
76 Pouces
71 Pouces
73 Pouces.....

Itinérances itinérantes ():

Utilisation d’iterrows () pour itérer sur chaque observation d’un DataFrame Pandas. Ici, nous utilisons une boucle for pour ajouter une nouvelle colonne, appelé PAYS, qui contient une version en majuscules des noms de pays dans la colonne “Pays”. Nous utilisons la méthode string supérieur() pour ca.

# Importer des données de voitures
import pandas as pd
cars = pd.read_csv(« voitures.csv », index_col = 0)

# Code de boucle qui ajoute la colonne COUNTRY
pour le laboratoire, rangée dans cars.iterrows():
    cars.loc[laboratoire, "PAYS"] = ligne['pays'].supérieur()

# Imprimer des voitures
imprimer(Voitures)

Utiliser iterrows () itérer sur chaque observation d’un Pandas DataFrame est facile à comprendre, mais pas très efficace. A chaque itération, nous créons une nouvelle série Pandas en Python. Si nous voulons ajouter une colonne à un DataFrame en appelant une fonction dans une autre colonne, la méthode iterrows () en combinaison avec une boucle for n’est pas la façon préférée de le faire. À sa place, nous voulons utiliser demander()

Ensuite, nous utiliserons le demander() pour obtenir le même résultat dans le DataFrame:

# Utilisez .apply(str.upper)
Voitures["PAYS"] = voitures["pays"].appliquer(str.upper)
imprimer(Voitures)

Production:

pays cars_per_cap drives_right (nous, PAYS)
nous 809 United States True UNITED STATES
AUS 731 Australia False AUSTRALIA
JPN 588 Japan False JAPAN
IN 18 India False INDIA
RU 200 Russia True RUSSIA
MOR 70 Maroc True MOR

Nous pouvons utiliser les outils d’itération ci-dessus pour travailler avec l’itération en Python de manière plus efficace. Ce n’était que le résumé de l’itération. Vous pouvez travailler avec différents exemples.

Les médias présentés dans cet article ne sont pas la propriété de DataPeaker et sont utilisés à la discrétion de l'auteur.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.