Voici mon code:
import pandas as pd
data = pd.DataFrame({'Odd':[1,3,5,6,7,9], 'Even':[0,2,4,6,8,10]})
for i in reversed(data):
print(data['Odd'], data['Even'])
Lorsque j'exécute ce code, j'obtiens l'erreur suivante:
Traceback (most recent call last):
File "C:\Python33\lib\site-packages\pandas\core\generic.py", line 665, in _get_item_cache
return cache[item]
KeyError: 5
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\*****\Documents\******\********\****.py", line 5, in <module>
for i in reversed(data):
File "C:\Python33\lib\site-packages\pandas\core\frame.py", line 2003, in __getitem__
return self._get_item_cache(key)
File "C:\Python33\lib\site-packages\pandas\core\generic.py", line 667, in _get_item_cache
values = self._data.get(item)
File "C:\Python33\lib\site-packages\pandas\core\internals.py", line 1656, in get
_, block = self._find_block(item)
File "C:\Python33\lib\site-packages\pandas\core\internals.py", line 1936, in _find_block
self._check_have(item)
File "C:\Python33\lib\site-packages\pandas\core\internals.py", line 1943, in _check_have
raise KeyError('no item named %s' % com.pprint_thing(item))
KeyError: 'no item named 5'
Pourquoi ai-je cette erreur?
Comment puis-je résoudre ce problème?
Quelle est la bonne façon de faire marche arrière pandas.DataFrame
?
data[["Odd", "Even"]]
, ou plus généralement data[data.columns[::-1]]
,?
reversed(data)
ne fonctionne pas, mais je ne sais pas pourquoi vous voudriez imprimer le tout Odd
et les Even
colonnes une fois pour chaque colonne du cadre, ce que votre code ferait si vous l'utilisiez reversed(list(data))
.
for i, row in data[::-1].iterrows(): print row["Odd"], row["Even"]
. Veuillez toujours donner des exemples dans votre question de la sortie que vous attendez; cela rend la vie beaucoup plus facile pour tout le monde.
"One"
n'est pas une colonne dansdata
, et je ne sais pas siTwo
est une variable ou une faute de frappe pour"Two"
, qui n'est pas non plus une colonne. Cherchez-vous simplement à inverser l'ordre des colonnes?