es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obtuve un error de clave al acceder a una columna por su posición en el dataframe.

df1.head()

<h1>Obtuve una salida</h1>

<h1>Pero obtuve el error cuando ejecuté la siguiente celda</h1>

subset = df1[[1]]

<h1>Error:</h1>

KeyError Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_14940/431015837.py in
—-> 1 subset = df1[[1]]

~\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\frame.py in getitem(self, key)
3462 if is_iterator(key):
3463 key = list(key)
-> 3464 indexer = self.loc._get_listlike_indexer(key, axis=1)[1]
3465
3466 # take() does not accept boolean indexers

~\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\indexing.py in _get_listlike_indexer(self, key, axis, raise_missing)
1312 keyarr, indexer, new_indexer = ax.reindex_non_unique(keyarr)
1313
-> 1314 self._validate_read_indexer(keyarr, indexer, axis)
1315
1316 if needs_i8_conversion(ax.dtype) or isinstance(

~\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\indexing.py in _validate_read_indexer(self, key, indexer, axis)
1372 if use_interval_msg:
1373 key = list(key)
-> 1374 raise KeyError(f”None of {key} are in the {axis_name}”)
1375
1376 not_found = list(ensure_index(key)[missing_mask.nonzero()[0]].unique())

KeyError: “None of [Int64Index([1], dtype=’int64′)] are in the


“`

“`

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El error “KeyError: “Ninguno de [Int64Index([1], dtype=’int64′)] está en [columns]” ocurre porque el índice 1 no está presente en ninguna columna del DataFrame df1. Al intentar acceder a una columna utilizando indexación como df1[[1]], pandas asume que el índice se refiere a una etiqueta de columna, pero en este caso, no hay ninguna columna con esa etiqueta.

    Para solucionar este error, puedes utilizar el nombre de la columna para extraer un subconjunto del DataFrame, o puedes utilizar la ubicación entera de la columna utilizando df1.iloc[:, 1].

Comments are closed.