Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

210
Visualizações
Valores de búsqueda por encabezado de columna correspondiente en Pandas 1.2.0 o más reciente

La operación pandas.DataFrame.lookup está "en desuso desde la versión 1.2.0" y desde entonces ha invalidado muchas respuestas anteriores.

Esta publicación intenta funcionar como un recurso canónico para buscar pares de columnas de fila correspondientes en pandas versiones 1.2.0 y posteriores.

Algunas respuestas anteriores a este tipo de pregunta (ahora en desuso):

  1. Búsqueda vectorizada en un marco de datos de pandas
  2. Python Pandas Match Vlookup columnas basadas en valores de encabezado
  3. Usando DataFrame.lookup para obtener filas donde los nombres de las columnas son un subconjunto de una cadena
  4. Python: pandas: haga coincidir el valor de la fila con el nombre de la columna/valor de la clave

Algunas respuestas actuales a esta pregunta:

  1. Valor de DataFrame de referencia correspondiente al encabezado de columna
  2. Pandas/Python: cómo crear una nueva columna basada en valores de otras columnas y aplicar condiciones adicionales a esta nueva columna

Valores de búsqueda estándar con índice de rango predeterminado

Dado el siguiente DataFrame:

 df = pd.DataFrame({'Col': ['B', 'A', 'A', 'B'], 'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]}) Col AB 0 B 1 5 1 A 2 6 2 A 3 7 3 B 4 8

Me gustaría poder buscar el valor correspondiente en la columna especificada en Col :

Me gustaría que mi resultado se vea así:

 Col AB Val 0 B 1 5 5 1 A 2 6 2 2 A 3 7 3 3 B 4 8 8

Valores de búsqueda estándar con un índice no predeterminado

Índice de rango no contiguo

Dado el siguiente DataFrame:

 df = pd.DataFrame({'Col': ['B', 'A', 'A', 'B'], 'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]}, index=[0, 2, 8, 9]) Col AB 0 B 1 5 2 A 2 6 8 A 3 7 9 B 4 8

Me gustaría conservar el índice pero aún encontrar el valor correspondiente correcto:

 Col AB Val 0 B 1 5 5 2 A 2 6 2 8 A 3 7 3 9 B 4 8 8

índice múltiple

 df = pd.DataFrame({'Col': ['B', 'A', 'A', 'B'], 'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]}, index=pd.MultiIndex.from_product([['C', 'D'], ['E', 'F']])) Col AB CEB 1 5 FA 2 6 DEA 3 7 FB 4 8

Me gustaría conservar el índice pero aún encontrar el valor correspondiente correcto:

 Col AB Val CEB 1 5 5 FA 2 6 2 DEA 3 7 3 FB 4 8 8

Búsqueda con valor predeterminado para valores no coincidentes/no encontrados

Dado el siguiente DataFrame

 df = pd.DataFrame({'Col': ['B', 'A', 'A', 'C'], 'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]}) Col AB 0 B 1 5 1 A 2 6 2 A 3 7 3 C 4 8 # Column C does not correspond with any column

Me gustaría buscar los valores correspondientes si existe uno; de lo contrario, me gustaría tenerlo predeterminado en 0

 Col AB Val 0 B 1 5 5 1 A 2 6 2 2 A 3 7 3 3 C 4 8 0 # Default value 0 since C does not correspond

Buscar con valores faltantes en la búsqueda Col

Dado el siguiente DataFrame:

 Col AB 0 B 1 5 1 A 2 6 2 A 3 7 3 NaN 4 8 # <- Missing Lookup Key

Me gustaría que cualquier valor de NaN en Col resulte en un valor de NaN en Val

 Col AB Val 0 B 1 5 5.0 1 A 2 6 2.0 2 A 3 7 3.0 3 NaN 4 8 NaN # NaN to indicate missing
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Otra opción es crear una tupla de las columnas de búsqueda, girar el marco de datos y seleccionar las columnas relevantes con las tuplas:

 cols = [(ent, ent) for ent in df.Col.unique()] df.assign(Val = df.pivot(index = None, columns = 'Col') .reindex(columns = cols) .ffill(axis=1) .iloc[:, -1]) Col AB Val 0 B 1 5 5.0 2 A 2 6 2.0 8 A 3 7 3.0 9 B 4 8 8.0
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda