J'essaie de parcourir les lignes d'une structure de données Python Pandas. Dans chaque rangée de la base de données, j'essaie de faire référence à chaque valeur le long d'une rangée par son nom de colonne.Les Pandas Python parcourent les lignes et accèdent aux noms des colonnes
Voici ce que j'ai:
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.rand(10,4),columns=list('ABCD'))
print df
A B C D
0 0.351741 0.186022 0.238705 0.081457
1 0.950817 0.665594 0.671151 0.730102
2 0.727996 0.442725 0.658816 0.003515
3 0.155604 0.567044 0.943466 0.666576
4 0.056922 0.751562 0.135624 0.597252
5 0.577770 0.995546 0.984923 0.123392
6 0.121061 0.490894 0.134702 0.358296
7 0.895856 0.617628 0.722529 0.794110
8 0.611006 0.328815 0.395859 0.507364
9 0.616169 0.527488 0.186614 0.278792
je this approach à itérer, mais il ne me donne une partie de la solution - après avoir sélectionné une ligne dans chaque itération, comment puis-je accéder éléments de la ligne par leur nom de colonne?
Voici ce que je suis en train de faire:
for row in df.iterrows():
print row.loc[0,'A']
print row.A
print row.index()
Ma compréhension est que la ligne est un Pandas series. Mais je n'ai aucun moyen d'indexer dans la série.
Est-il possible d'utiliser des noms de colonnes tout en effectuant une itération sur des lignes?
'row' dans votre exemple n'est pas une série, ce devrait être un tuple. Mais si vous faites 'pour idx, row dans df.iterrows()', row ['A'] 'devrait fonctionner correctement? – ayhan
Voilà ce qui me manquait! Merci. –