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

839
Vistas
PySpark: haga coincidir los valores de una columna de DataFrame con otra columna de DataFrame

En Pandas DataFrame, puedo usar la función DataFrame.isin() para hacer coincidir los valores de la columna con otra columna.

Por ejemplo: supongamos que tenemos un DataFrame:

 df_A = pd.DataFrame({'col1': ['A', 'B', 'C', 'B', 'C', 'D'], 'col2': [1, 2, 3, 4, 5, 6]}) df_A col1 col2 0 A 1 1 B 2 2 C 3 3 B 4 4 C 5 5 D 6

y otra trama de datos:

 df_B = pd.DataFrame({'col1': ['C', 'E', 'D', 'C', 'F', 'G', 'H'], 'col2': [10, 20, 30, 40, 50, 60, 70]}) df_B col1 col2 0 C 10 1 E 20 2 D 30 3 C 40 4 F 50 5 G 60 6 H 70

Puedo usar la función .isin() para hacer coincidir los valores de columna de df_B con los valores de columna de df_A

P.ej:

 df_B[df_B['col1'].isin(df_A['col1'])]

rendimientos:

 col1 col2 0 C 10 2 D 30 3 C 40

¿Cuál es la operación equivalente en PySpark DataFrame?

 df_A = pd.DataFrame({'col1': ['A', 'B', 'C', 'B', 'C', 'D'], 'col2': [1, 2, 3, 4, 5, 6]}) df_A = sqlContext.createDataFrame(df_A) df_B = pd.DataFrame({'col1': ['C', 'E', 'D', 'C', 'F', 'G', 'H'], 'col2': [10, 20, 30, 40, 50, 60, 70]}) df_B = sqlContext.createDataFrame(df_B) df_B[df_B['col1'].isin(df_A['col1'])]

El código .isin() anterior me da un mensaje de error:

 u'resolved attribute(s) col1#9007 missing from col1#9012,col2#9013L in operator !Filter col1#9012 IN (col1#9007);;\n!Filter col1#9012 IN (col1#9007)\n+- LogicalRDD [col1#9012, col2#9013L]\n'
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Este tipo de operación se llama semi-unión izquierda en chispa:

 df_B.join(df_A, ['col1'], 'leftsemi')
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