• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Laboratorio
    • Encuestas: Tamaño de Muestra
    • Lotería: Probabilidad de Ganar
    • Reparto de Escaños (D’Hondt)
    • Tres en Raya con IA
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad
    • Tiendas afiliadas
      • AliExpress
      • Amazon
      • Banggood
      • GeekBuying
      • Lenovo

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • Python
  • Pandas
  • NumPy
  • Matlab
  • Julia
  • Excel
  • IA Generativa

Pandas: Convertir el índice en una columna en un DataFrame

agosto 5, 2021 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 4 minutos

pandas

La semana pasada hemos visto cómo transformar una columna el índice de un DataFrame, en esta ocasión vamos a ver como se puede hacer el proceso: convertir el índice en una columna. Para lo que se usará el método reset_index() presente en los objetos DataFrame de Pandas.

El método reset_index()

En los objetos DataFrame de Pandas se encuentra el método reset_index() que tiene la siguiente forma

df.reset_index(level=None, drop=False, inplace=False, col_level=0, col_fill='')

en donde las propiedades más importantes son:

  • level: por defecto el método restablece todos los índices del objeto, pero en el caso de los índices múltiples es posible indicar mediante esta propiedad aquellos que serán restablecidos.
  • drop: indica si el índice que se convierte en una columna o si este es eliminado, por defecto el valor es falso, esto es, los valores del índice se convertirán en una columna.
  • inplace: la propiedad indica si el método aplica las modificaciones al propio objeto o devuelve una copia modificada del mismo, por defecto el valor es falso, por lo que se obtiene una copia modificada.

Publicidad


Convertir el índice en una columna

Para comprobar el funcionamiento del método se puede usar el código visto la semana pasada para crear un conjunto de datos de ejemplo.

import pandas as pd

users = {'first_name': ['Montgomery', 'Dagmar', 'Reeba', 'Shalom', 'Broddy', 'Aurelia'],
         'last_name': ['Humes', 'Elstow', 'Wattisham', 'Alen', 'Keningham', 'Brechin'],
         'age': [27, 41, 29, 29, 21, 33],
         'gender': ['Male', 'Female', 'Female', 'Male', 'Male', 'Female']}

df = pd.DataFrame(users)
df.set_index('first_name', inplace=True)
df
            last_name  age  gender
first_name                        
Montgomery      Humes   27    Male
Dagmar         Elstow   41  Female
Reeba       Wattisham   29  Female
Shalom           Alen   29    Male
Broddy      Keningham   21    Male
Aurelia       Brechin   33  Female

En este ejemplo se ha creado inicialmente un DataFrame con un conjunto de datos y, mediante el método set_index(), se le ha asignado la columna con el nombre al índice. Obteniendo el objeto que se ha mostrado. Ahora se puede recuperar esta columna y generar un nuevo índice por defecto llamado al método reset_index() sin ningún parámetro.

¡Nuevo video! Aprende a eliminar filas y columnas en Pandas sin errores
En Analytics Lane
¡Nuevo video! Aprende a eliminar filas y columnas en Pandas sin errores

dfi = df.reset_index()
dfi
   first_name  last_name  age  gender
0  Montgomery      Humes   27    Male
1      Dagmar     Elstow   41  Female
2       Reeba  Wattisham   29  Female
3      Shalom       Alen   29    Male
4      Broddy  Keningham   21    Male
5     Aurelia    Brechin   33  Female

Por defecto, los valores del índice se conservan en una nueva columna. En el caso de que no queramos conservar estos valores se puede asignar el valor verdadero a la propiedad drop para que se eliminen estos datos, creando así un conjunto de datos más pequeño.

dfi = df.reset_index(drop=True)
dfi
   last_name  age  gender
0      Humes   27    Male
1     Elstow   41  Female
2  Wattisham   29  Female
3       Alen   29    Male
4  Keningham   21    Male
5    Brechin   33  Female

Recuperar únicamente un índice en índices múltiples

En los DataFrame que existen más de un índice es posible recuperar solo uno de estos, manteniendo los otros. Para ver esto se le puede agregar un segundo índice al DataFrame, tal como vimos la semana pasada, usando el método set_index() con la propiedad append a verdadero.

df.set_index('last_name', append=True, inplace=True)
df
                      age  gender
first_name last_name             
Montgomery Humes       27    Male
Dagmar     Elstow      41  Female
Reeba      Wattisham   29  Female
Shalom     Alen        29    Male
Broddy     Keningham   21    Male
Aurelia    Brechin     33  Female

Ahora en el caso de usar el método reset_index() sin ningún parámetro se recuperaran ambos índices.

dfi = df.reset_index()
dfi
   first_name  last_name  age  gender
0  Montgomery      Humes   27    Male
1      Dagmar     Elstow   41  Female
2       Reeba  Wattisham   29  Female
3      Shalom       Alen   29    Male
4      Broddy  Keningham   21    Male
5     Aurelia    Brechin   33  Female

Aunque se puede indicar como primer parámetro del método el nombre de un índice para solamente recuperar este. Por ejemplo, para recuperar solamente los nombres se puede conseguir mediante

dfi = df.reset_index('first_name')
dfi
           first_name  age  gender
last_name                         
Humes      Montgomery   27    Male
Elstow         Dagmar   41  Female
Wattisham       Reeba   29  Female
Alen           Shalom   29    Male
Keningham      Broddy   21    Male
Brechin       Aurelia   33  Female

Publicidad


Realizando las operaciones en memoria

Nótese que en los ejemplos anteriores se ha creado una copia del DataFrame con las modificaciones, por lo que los datos originales se conservaban en df, mientras los resultados se podían consultar en dfi. Conservar ambas copias no es un problema cuando los DataFrames son pequeños, aunque estos pueden dar problemas de memoria en otros casos. Para evitar estos problemas se puede asignar el valor verdadero a la propiedad inplace, por lo que el objeto original se modificará y el método no devolverá ningún valor.

df.reset_index(inplace=True)
df
   first_name  last_name  age  gender
0  Montgomery      Humes   27    Male
1      Dagmar     Elstow   41  Female
2       Reeba  Wattisham   29  Female
3      Shalom       Alen   29    Male
4      Broddy  Keningham   21    Male
5     Aurelia    Brechin   33  Female

Conclusiones

En esta entrada se ha visto cómo se puede recuperar el índice de un DataFrame y convertirlo en una columna. Un proceso que complementa al que se ha visto la semana pasada en el que vio cómo convertir una columna en un índice.

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicidad


Publicaciones relacionadas

  • ¡Nuevo video! Aprende a eliminar filas y columnas en Pandas sin errores
  • Nuevo video en el canal: Cómo eliminar duplicados de una lista en Python
  • Nuevo video en YouTube: Trabajando con archivos JSON en Python
  • Nuevo video: Leer y guardar archivos Excel y CSV en Python
  • Nuevo video: cómo activar copiar y pegar en VirtualBox fácilmente
  • Cómo extender el tamaño de un disco en Rocky Linux 9 usando growpart y LVM
  • Curiosidad: El origen del análisis exploratorio de datos y el papel de John Tukey
  • Cómo calcular el tamaño de la muestra para encuestas
  • Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”

Publicado en: Python Etiquetado como: Pandas

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Bluesky
  • Facebook
  • GitHub
  • Instagram
  • Mastodon
  • Pinterest
  • RSS
  • Telegram
  • Tumblr
  • Twitter
  • YouTube

Publicidad

Entradas recientes

Curiosidad: La Ley de Twyman y la trampa de los datos “interesantes”

septiembre 11, 2025 Por Daniel Rodríguez

Cómo calcular el tamaño de la muestra para encuestas

septiembre 9, 2025 Por Daniel Rodríguez

Curiosidad: El origen del análisis exploratorio de datos y el papel de John Tukey

septiembre 4, 2025 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Error: No se puede cargar el archivo porque la ejecución de scripts está deshabilitada en este sistema Solución a los problemas de ejecución de scripts en Windows 11 cuando se da el mensaje: “No se puede cargar el archivo porque la ejecución de scripts está deshabilitada en este sistema” publicado el febrero 14, 2024 | en Herramientas
  • Regresión de Vectores de Soporte (SVR, Support Vector Regression) publicado el diciembre 17, 2021 | en Ciencia de datos
  • pandas Pandas: Cómo convertir listas en DataFrames publicado el noviembre 9, 2020 | en Python
  • Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas publicado el mayo 10, 2019 | en Python
  • Diferencias entre git pull y git fetch: ¿Cuándo usar cada una? publicado el septiembre 27, 2024 | en Herramientas

Publicidad

Lo mejor valorado

4.9 (24)

Seleccionar filas y columnas en Pandas con iloc y loc

4.6 (16)

Archivos JSON con Python: lectura y escritura

4.4 (14)

Ordenación de diccionarios en Python mediante clave o valor

4.7 (13)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.5 (10)

Diferencias entre var y let en JavaScript

Publicidad

Comentarios recientes

  • Daniel Rodríguez en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • Pepe en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • CARLOS ARETURO BELLO CACERES en Justicio: La herramienta gratuita de IA para consultas legales
  • Piera en Ecuaciones multilínea en Markdown
  • Daniel Rodríguez en Tutorial de Mypy para Principiantes

Publicidad


Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2025 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto