Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En Desarrollo Última actualización: 25 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

Este artículo es una guía sobre cómo renombrar columnas en Pandas.

Pandas es una biblioteca de Python para tratar con conjuntos de datos. Lee fácilmente datos de diferentes formatos de archivo como CSVJSON y SQL. Cuando los datos se cargan en Pandas, se almacenan en un objeto DataFrame.

Un DataFrame es un objeto bidimensional, lo que significa que los datos se almacenan en un formato similar a una tabla con filas y columnas. Esto es similar al almacenamiento de datos en archivos CSV u hojas de cálculo. Cuando cargue los datos, pandas intentará cargar los nombres de las columnas desde el archivo fuente del conjunto de datos.

columnas

Sin embargo, los nombres de columna cargados pueden no ser los ideales, y puede que desee renombrar las columnas a algo más significativo.

En este artículo, discutiremos primero las mejores prácticas para nombrar columnas en Pandas. Después, entraremos en el tema principal, que son los métodos para renombrarlas.

Mejores prácticas para nombrar columnas en Pandas

Antes de que lleguemos a la parte de la guía de renombrado de este artículo, aquí tiene algunas de las mejores prácticas y convenciones que puede seguir a la hora de nombrar sus columnas en pandas.

✅ Utilice nombres descriptivos. Los nombres crípticos como col_1 son difíciles de entender y no transmiten mucha información sobre los datos contenidos en el conjunto de datos.

✅ Utilice el caso serpiente al nombrar las columnas. En el caso serpiente, los nombres de sus columnas tendrán este aspecto: numero_de_personas en lugar de este NúmeroDePersonas.

✅ Aunque se prefiere el caso serpiente, debe utilizar la convención de nomenclatura que utilice su conjunto de datos original. Esto evita confusiones al moverse entre su conjunto de datos y el objeto DataFrame de Pandas.

✅ Sea cual sea la convención de nomenclatura que utilice, mantenga la coherencia en todo el conjunto de datos. Evite nombrar algunas columnas utilizando PascalCase y otras utilizando snake_case.

✅ Por último, intente utilizar nombres más cortos. Estos son más fáciles de escribir, ya que la sugerencia de código y la finalización en los cuadernos suelen ser deficientes. Esto significa que codificar en un cuaderno requiere teclear mucho código manualmente, y los nombres más cortos facilitan la vida.

Cómo renombrar columnas en Pandas

Puede consumir el contenido de este artículo de dos maneras. Primero, podría simplemente leerlo como referencia. En segundo lugar, podría seguirlo, codificando también, para tener más posibilidades de recordar los conceptos discutidos. Le recomiendo este último método.

Para codificar a lo largo, voy a utilizar un cuaderno alojado con Google Colab. Usted también puede crear uno y seguirme; es completamente gratuito. El cuaderno con todo el código que escribiré en este tutorial está disponible aquí.

Configuración del bloque de notas

Antes de empezar a renombrar columnas en pandas, vamos a configurar el cuaderno y cargar algunos datos de ejemplo. Cree una celda de código e importe pandas utilizando el código siguiente.

importar pandas como pd

Después de importar pandas, puede cargar el conjunto de datos california_housing_data, que está disponible por defecto como conjunto de datos de muestra cuando se crea un cuaderno Google Colab.

datos_vivienda = pd.read_csv('/content/sample_data/california_housing_train.csv')

Puede ver las primeras filas del conjunto de datos utilizando el código:

housing_data.head()

También puede listar las columnas presentes en el conjunto de datos con lo siguiente

datos_vivienda.columnas

Esto debería producir la siguiente salida:

Index(['longitud', 'latitud', 'edad_media_vivienda', 'total_habitaciones',
 'total_habitaciones', 'población', 'hogares', 'ingreso_medio',
 'valor_medio_vivienda'],
 dtype='object')

Esto significa que sus datos se han cargado correctamente y que el DataFrame tiene lo que necesitamos.

Método 1: Utilizar la función Renombrar

La forma más sencilla de renombrar columnas en pandas es utilizar el método rename del objeto DataFrame. Utilizando este método, se renombra una columna llamando al método rename. El método admite varios argumentos.

En este caso, estamos interesados en renombrar una columna, por lo que pasaremos al argumento de la palabra clave columnas. El valor de este argumento es un diccionario cuyas entradas representan el mapeo de los antiguos nombres de columna a los nuevos. He aquí un ejemplo en el que renombramos la columna hogares a casas.

datos_vivienda.rename(columns={ 'hogares': 'casas' })

Esto debería producir la siguiente salida:

Datos de alojamiento después de renombrar la columna pandas dataframe

Como puede ver, pasamos un diccionario en el que la clave es el nombre antiguo de la columna y el valor es el nombre nuevo de la columna. El valor no tiene por qué ser sólo una cadena. También puede ser una función donde el valor devuelto por la función es el nuevo nombre de columna. Si desea renombrar más columnas, puede añadir más entradas al diccionario.

Método 2: Sustituir la cadena de la columna

Otro método que puede utilizar para renombrar columnas en pandas es reemplazar la cadena de la columna en un DataFrame. Supongamos que quiere renombrar la columna actualmente llamada población a número_de_personas. Utilizando este método, escribiría el siguiente código:

datos_vivienda.columnas = datos_vivienda.columnas.str.replace('población', 'número_de_personas')

Para imprimir la lista modificada, utilizaremos el siguiente código:

datos_vivienda

Esto debería producir la siguiente salida en pantalla:

Screenshot-from-2023-04-04-07-35-06

Método 3: Asignar una lista de nombres de columnas

Alternativamente, puede renombrar columnas en Pandas asignando una lista a la propiedad columnas del DataFrame. Para este ejemplo, si quisiera renombrar todas las columnas de forma que todas utilicen números, podría utilizar el siguiente código:

datos_vivienda.columnas = [x for x in range(9)]

En este ejemplo, he establecido el atributo housing_data . columnas en una lista de números enteros del 0 al 8. Para generar la lista, he utilizado la comprensión de listas, que es una función nativa de Python para generar cómodamente listas de valores utilizando un bucle for.

La desventaja de utilizar este método es que tiene que renombrar todo el conjunto de nombres de columnas; no puede limitarse a renombrar un subconjunto de columnas. Lo ideal sería que los nombres de sus columnas fueran algo más descriptivo, pero aquí sólo estoy utilizando números como demostración.

Puede ver el resultado escribiendo lo siguiente:

datos_vivienda
Screenshot-from-2023-04-04-05-58-41

Método 4: Uso de la función set_axis() para renombrar columnas en Pandas

El método que vamos a discutir es el método set_axis del objeto DataFrame. Este método se utiliza para establecer una lista de valores como los valores del eje para cualquiera de los dos ejes en Pandas. Como estamos renombrando columnas, estamos estableciendo el eje 1. Para utilizar este método, usamos el siguiente código:

nombres_columna = [str(x) for x in range(8, -1, -1)]
housing_data.set_axis(nombres_columna, eje=1, inplace=True)

La primera línea genera una lista de valores de 8 a 0 en orden descendente y los almacena en la variable nombres_columna. En la segunda línea, llamamos al método set_axis, proporcionando la columna_names como argumento y estableciendo el eje a modificar como eje 1. También establecemos inplace en True para que modifique el DataFrame original.

Podemos ver el DataFrame escribiendo

housing_data

Esto debería producir lo siguiente:

Screenshot-from-2023-04-04-06-47-20

Palabras finales

Este artículo ha introducido brevemente cómo se almacenan los datos en formato tabular en pandas. También discutimos las mejores prácticas para nombrar columnas en Pandas para hacernos la vida más fácil.

Por último y más importante, también discutimos los diferentes métodos para renombrar columnas en pandas.

A continuación, vea cómo crear un Pandas DataFrame [con ejemplos].

  • Anesu Kafesu
    Autor
    Desarrollador web full stack y redactor técnico. Actualmente aprendiendo IA.
Gracias a nuestros patrocinadores
Más lecturas sobre desarrollo
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder