ComenzarEmpieza gratis

Etiquetar los datos

Tienes disponible un dataframe df con las columnas endword: string, features: vector y outvec: vector. Debes seleccionar las filas en las que endword sea igual a "him" y añadir una columna label con el valor entero 1. Luego, usa la operación union para añadir el mismo número de filas en las que endword no sea igual a him, de modo que estas filas adicionales tengan label = 0.

Recuerda que, en SQL, la comparación de distinto se hace con <>.

Este ejercicio forma parte del curso

Introducción a Spark SQL en Python

Ver curso

Instrucciones del ejercicio

  • Importa la función lit.
  • Selecciona las filas donde endword sea 'him' y añade una columna entera label con el valor 1.
  • Selecciona las filas donde endword no sea 'him' y añade una columna entera label con el valor 0.
  • Haz el union de ambos conjuntos, usando un número de ejemplos negativos igual al de ejemplos positivos.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Import the lit function
from pyspark.____ import lit

# Select the rows where endword is 'him' and label 1
df_pos = df.where("____ = 'him'")\
           .withColumn('label', lit(____))

# Select the rows where endword is not 'him' and label 0
df_neg = df.where("endword <> '____'")\
           .withColumn('label', ____(0))

# Union pos and neg in equal number
df_examples = df_pos.____(df_neg.limit(df_pos.count()))
print("Number of examples: ", df_examples.count())
df_examples.where("endword <> 'him'").sample(False, .1, 42).show(5)
Editar y ejecutar código