Tipos de datos
¡Buen trabajo! Antes de empezar a modelar, es importante saber que Spark solo maneja datos numéricos. Eso significa que todas las columnas de tu DataFrame deben ser enteros o decimales (llamados "dobles" en Spark).
Cuando importamos nuestros datos, dejamos que Spark adivinara qué tipo de información contenía cada columna. Por desgracia, Spark no siempre acierta y puedes ver que algunas de las columnas de nuestro DataFrame son cadenas que contienen números en lugar de valores numéricos reales.
Para remediarlo, puedes utilizar el método .cast()
en combinación con el método .withColumn()
.
Es importante tener en cuenta que .cast()
funciona en columnas, mientras que .withColumn()
funciona en DataFrames.
El único argumento que tienes que pasar a .cast()
es el tipo de valor que quieres crear, en forma de cadena. Por ejemplo, para crear números enteros, pasarás el argumento "integer"
y para números decimales utilizarás "double"
.
Puedes poner esta llamada a .cast()
dentro de una llamada a .withColumn()
para sobrescribir la columna ya existente, ¡igual que hiciste en el capítulo anterior!
¿Qué tipo de datos necesita Spark para modelar?
Este ejercicio forma parte del curso
Introducción a PySpark
Ejercicio interactivo práctico
Pon en práctica la teoría con uno de nuestros ejercicios interactivos
