ComenzarEmpieza gratis

Eliminar filas no válidas

Ahora que has eliminado con éxito las filas comentadas, has recibido información sobre el formato general de los datos. Debe haber al menos 5 columnas separadas por tabuladores en el Marco de datos. Recuerda que tu DataFrame original sólo tiene una única columna, por lo que tendrás que dividir los datos en los caracteres de tabulación (\t).

El DataFrame annotations_df ya está disponible, con las filas comentadas eliminadas. La biblioteca spark.sql.functions está disponible con el alias F. El número inicial de filas disponibles en el Marco de datos se almacena en la variable initial_count.

Este ejercicio forma parte del curso

Limpiar datos con PySpark

Ver curso

Instrucciones del ejercicio

  • Crea una nueva variable tmp_fields utilizando la columna annotations_df DataFrame '_c0' dividiéndola en el carácter de tabulación.
  • Crea una nueva columna en annotations_df llamada 'colcount' que represente el número de campos definidos en el paso anterior.
  • Filtra las filas de annotations_df que contengan menos de 5 campos.
  • Cuenta el número de filas del Marco de datos y compáralo con initial_count.

Ejercicio interactivo práctico

Prueba este ejercicio completando el código de muestra.

# Split _c0 on the tab character and store the list in a variable
tmp_fields = ____(annotations_df['_c0'], ____)

# Create the colcount column on the DataFrame
annotations_df = annotations_df.____('____', ____(____))

# Remove any rows containing fewer than 5 fields
annotations_df_filtered = annotations_df.____(~ (____))

# Count the number of rows
final_count = ____
print("Initial count: %d\nFinal count: %d" % (initial_count, final_count))
Editar y ejecutar código