Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

810
Vistas
¿Cómo agregar un prefijo a los nombres de las columnas, excepto algunas columnas?

Esta es una adaptación de una pregunta planteada por @ScalaBoy aquí y respondida por @timgeb, la pregunta es la misma, excepto que se trata de un prefijo, no de un sufijo:

Dado el marco de datos de pandas, ¿cómo puedo agregar el prefijo "nuevo_" a todas las columnas, excepto a dos columnas, ID y nombre?

 import pandas as pd data = [[1,'Alex',22,'single'],[2,'Bob',32,'married'],[3,'Clarke',23,'single']] df = pd.DataFrame(data,columns=['Id','Name','Age','Status'])
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Utilice añadir_prefijo. Esta función se aplica a todo el marco de datos. Para ocultar columnas que no necesita cambiar de nombre, configúrelas como índice. Después de cambiar el nombre, puede restablecer el índice. Código a continuación

 df=df.set_index(['Id', 'Name']).add_prefix('new_').reset_index() Id Name new_Age new_Status 0 1 Alex 22 single 1 2 Bob 32 married 2 3 Clarke 23 single
over 4 years ago · Santiago Trujillo Denunciar

0

Puede utilizar el método de cambio de rename :

 df.rename({col:'new_'+ col for col in df.columns[~df.columns.isin(['Id','Name'])]}, axis=1)
over 4 years ago · Santiago Trujillo Denunciar

0

df.rename(columns = lambda col: f"new_{col}" if col not in ('Name', 'Id') else col ) Id Name new_Age new_Status 0 1 Alex 22 single 1 2 Bob 32 married 2 3 Clarke 23 single

Podrías lograrlo con expresiones regulares; sin embargo, en mi opinión, no es tan claro como la solución anterior:

 new_col = df.columns.str.replace(pat = r"\b(?!Id|Name\b).+", repl = lambda m: f"new_{m[0]}", regex=True) df.set_axis(new_col, axis=1) # or df.columns = new_col Id Name new_Age new_Status 0 1 Alex 22 single 1 2 Bob 32 married 2 3 Clarke 23 single
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda