Types de données
Bon travail ! Avant de vous lancer dans la modélisation, il est important de savoir que Spark ne gère que des données numériques. Cela signifie que toutes les colonnes de votre DataFrame doivent être soit des entiers, soit des décimales (appelées " doubles " dans Spark).
Lorsque nous avons importé nos données, nous avons laissé Spark deviner le type d'informations contenues dans chaque colonne. Malheureusement, Spark ne devine pas toujours juste et vous pouvez voir que certaines des colonnes de notre DataFrame sont des chaînes contenant des nombres par opposition à de véritables valeurs numériques.
Pour y remédier, vous pouvez utiliser la méthode .cast()
en combinaison avec la méthode .withColumn()
.
Il est important de noter que .cast()
fonctionne sur les colonnes, tandis que .withColumn()
fonctionne sur les DataFrame.
Le seul argument que vous devez transmettre à .cast()
est le type de valeur que vous souhaitez créer, sous forme de chaîne de caractères. Par exemple, pour créer des nombres entiers, vous passerez l'argument "integer"
et pour les nombres décimaux, vous utiliserez "double"
.
Vous pouvez placer cet appel à .cast()
à l'intérieur d'un appel à .withColumn()
pour écraser la colonne déjà existante, comme vous l'avez fait dans le chapitre précédent !
De quel type de données Spark a-t-il besoin pour la modélisation ?
Cet exercice fait partie du cours
Introduction à PySpark
Exercice interactif pratique
Passez de la théorie à la pratique avec l’un de nos exercices interactifs
