Je suis nouveau sur Pandas et j'ai un cadre de données simple data:

import fix_yahoo_finance as yf  
data = yf.download('AAPL','2009-01-01','2019-01-01')

data contient les éléments suivants:

enter image description here

Je pense que list(data) devrait afficher tous les noms de colonnes, mais cela renvoie:

['Open', 'High', 'Low', 'Close', 'Adj Close', 'Volume']

Comment puis-je accéder à la colonne en gras Date comme un itérable? Je serais reconnaissant pour toute aide que d'autres pourraient offrir avec cette question.

1
duhaime 14 mars 2019 à 05:14

2 réponses

Meilleure réponse

Vous devrez faire reset_index:

data = data.reset_index()

Et maintenant:

print(list(data))

Mais aussi en fait:

print(data.columns.tolist())

Est plus rapide.

Production:

['Date', 'Open', 'High', 'Low', 'Close', 'Adj Close', 'Volume']

C'était comme ça parce que 'Date' était la colonne d'index.

1
U11-Forward 14 mars 2019 à 02:26

Votre data semble pandas.DataFrame objet

DataFrame se compose de index et columns

Dans votre DataFrame cas

['Open', 'High', 'Low', 'Close', 'Adj Close', 'Volume'] sont des colonnes

['Date'] est l'index

list(data) n'affiche que les colonnes de DataFrame

Donc, pour obtenir date comme itérable, vous pouvez essayer:

data.index

Ou, comme indiqué ci-dessus, vous pouvez déplacer index vers columns en:

data.reset_index()

L'un ou l'autre fonctionnerait.

0
JessieB 14 mars 2019 à 02:31