No se puede establecer el índice de un marco de datos de pandas - obteniendo "KeyError"
Genero un marco de datos que se ve así (summaryDF
):
accuracy f1 precision recall
0 0.494 0.722433 0.722433 0.722433
0 0.290 0.826087 0.826087 0.826087
0 0.274 0.629630 0.629630 0.629630
0 0.278 0.628571 0.628571 0.628571
0 0.288 0.718750 0.718750 0.718750
0 0.740 0.740000 0.740000 0.740000
0 0.698 0.765133 0.765133 0.765133
0 0.582 0.778547 0.778547 0.778547
0 0.682 0.748235 0.748235 0.748235
0 0.574 0.767918 0.767918 0.767918
0 0.398 0.711656 0.711656 0.711656
0 0.530 0.780083 0.780083 0.780083
Debido a que sé cuál debería ser cada fila en esto, entonces estoy usando este código para establecer los nombres de cada fila (estos no son los nombres reales de las filas, sino solo por el argumento).
summaryDF = summaryDF.set_index(['A','B','C', 'D','E','F','G','H','I','J','K','L'])
Sin embargo, estoy obteniendo:
level = frame[col].values
File "/Users/me/anaconda/lib/python2.7/site-packages/pandas/core/frame.py", line 1797, in __getitem__
return self._getitem_column(key)
File "/Users/me/anaconda/lib/python2.7/site-packages/pandas/core/frame.py", line 1804, in _getitem_column
return self._get_item_cache(key)
File "/Users/me/anaconda/lib/python2.7/site-packages/pandas/core/generic.py", line 1084, in _get_item_cache
values = self._data.get(item)
File "/Users/me/anaconda/lib/python2.7/site-packages/pandas/core/internals.py", line 2851, in get
loc = self.items.get_loc(item)
File "/Users/me/anaconda/lib/python2.7/site-packages/pandas/core/index.py", line 1572, in get_loc
return self._engine.get_loc(_values_from_object(key))
File "pandas/index.pyx", line 134, in pandas.index.IndexEngine.get_loc (pandas/index.c:3824)
File "pandas/index.pyx", line 154, in pandas.index.IndexEngine.get_loc (pandas/index.c:3704)
File "pandas/hashtable.pyx", line 686, in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12280)
File "pandas/hashtable.pyx", line 694, in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12231)
KeyError: 'A'
No tengo idea de lo que estoy haciendo mal y he investigado a lo largo y ancho. ¿Algunas ideas?