CommencerCommencer gratuitement

Chargement des données de spam SMS

Vous avez vu qu'il est possible de déduire les types de données directement à partir des données. Il est parfois pratique d'avoir un contrôle direct sur les types de colonnes. Pour ce faire, vous devez définir un schéma explicite.

Le fichier sms.csv contient une sélection de messages SMS qui ont été classés comme "spam" ou "ham". Ces données ont été adaptées du UCI Machine Learning Repository. Il y a un total de 5574 SMS, dont 747 ont été étiquetés comme spam.

Notes sur le format CSV :

  • pas d'enregistrement d'en-tête et
  • sont séparés par un point-virgule (ce n'est pas le séparateur par défaut).

Dictionnaire de données :

  • id - identificateur d'enregistrement
  • text - le contenu du message SMS
  • label - spam ou ham (nombre entier ; 0 = ham et 1 = spam)

Cet exercice fait partie du cours

Apprentissage automatique avec PySpark

Afficher le cours

Instructions

  • Spécifiez le schéma de données, en indiquant les noms des colonnes ("id", "text", et "label") et les types de colonnes.
  • Lisez les données d'un fichier délimité appelé "sms.csv".
  • Imprimez le schéma du DataFrame résultant.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

from pyspark.sql.types import StructType, StructField, IntegerType, StringType

# Specify column names and types
schema = StructType([
    StructField("____", IntegerType()),
    ____("____", ____()),
    ____("____", ____())
])

# Load data from a delimited file
sms = spark.read.csv(____, sep=____, header=____, ____=____)

# Print schema of DataFrame
sms.____()
Modifier et exécuter le code