Itération par les colonnes d'un DataFrame Pandas
-
Utilisez la syntaxe
getitem
([]
) pour itérez les colonnes dans les DataFrame de Pandas -
Utilisez la fonction
dataframe.iteritems()
pour itérer les colonnes dans le DataFrame de Pandas -
Utilisez la fonction
enumerate()
pour itéréer sur les colonnes Pandas
Les DataFrames peuvent être très grands et peuvent contenir des centaines de lignes et de colonnes. Il est nécessaire d’itérer sur les colonnes d’un DataFrame et d’effectuer des opérations sur les colonnes individuellement comme la régression et bien d’autres encore.
Nous pouvons utiliser la boucle for
pour itérer sur les colonnes d’un DataFrame. La syntaxe de base de la boucle for
est donnée ci-dessous :
for value in sequence:
# Body of Loop
Nous pouvons utiliser plusieurs méthodes pour exécuter la boucle for
sur une DataFrame, par exemple, la syntaxe getitem (la fonction []
), la fonction dataframe.iteritems()
, la fonction enumerate()
et l’utilisation de l’index d’une DataFrame.
Utilisez la syntaxe getitem
([]
) pour itérez les colonnes dans les DataFrame de Pandas
Nous pouvons utiliser des étiquettes de colonnes pour faire passer la boucle for
sur la DataFrame en utilisant la syntaxe getitem
([]
). Par exemple :
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
print(df)
print("------------------")
for column in df:
print(df[column].values)
Production :
a b c d
0 10 6 7 8
1 1 9 12 14
2 5 8 10 6
------------------
[10 1 5]
[6 9 8]
[ 7 12 10]
[ 8 14 6]
La fonction values()
est utilisée pour extraire les éléments de l’objet sous forme de liste.
Utilisez la fonction dataframe.iteritems()
pour itérer les colonnes dans le DataFrame de Pandas
Pandas fournit la fonction dataframe.iteritems()
, qui aide à itérer sur une DataFrame et renvoie le nom de la colonne et son contenu sous forme de série.
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
for (colname, colval) in df.iteritems():
print(colname, colval.values)
Production :
a [10 1 5]
b [6 9 8]
c [ 7 12 10]
d [ 8 14 6]
Utilisez la fonction enumerate()
pour itéréer sur les colonnes Pandas
La fonction enumerate()
avec DataFrame renvoie l’index et le libellé de la colonne, ce qui nous permet d’itérer par dessus.
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
for (index, colname) in enumerate(df):
print(index, df[colname].values)
Production :
0 [10 1 5]
1 [6 9 8]
2 [ 7 12 10]
3 [ 8 14 6]
Nous pouvons utiliser très efficacement n’importe laquelle des méthodes ci-dessus pour itérer sur le DataFrame. Nous pouvons également effectuer des opérations comme des régressions sur des colonnes individuellement. Par exemple, nous pouvons définir la dernière colonne comme variable indépendante et exécuter des régressions MCO avec d’autres colonnes comme variables dépendantes, comme le montre l’exemple ci-dessous :
import pandas as pd
import statsmodels.api as sm
import numpy as np
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
for column in df:
Y = df["d"]
X = df[column]
X = sm.add_constant(X)
model = sm.OLS(X, Y)
results = model.fit()
print(results.params)
Production :
0 1
d 0.094595 0.418919
0 1
d 0.094595 0.75
0 1
d 0.094595 0.959459
0 1
d 0.094595 1.0
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArticle connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme