LoslegenKostenlos loslegen

Laden von SMS-Spam-Daten

Du hast gesehen, dass man Datentypen direkt aus den Daten ableiten kann. Manchmal ist es praktisch, die Spaltentypen direkt zu steuern. Das machst du, indem du ein explizites Schema festlegst.

Die Datei „ sms.csv “ hat eine Auswahl von SMS-Nachrichten, die entweder als „Spam“ oder „Ham“ markiert wurden. Diese Daten wurden aus dem UCI Machine Learning Repository übernommen. Es gibt insgesamt 5574 SMS, von denen 747 als Spam markiert wurden.

Hinweise zum CSV-Format:

  • kein Kopfdatensatz und
  • Felder werden durch ein Semikolon getrennt (dies ist nicht das Standardtrennzeichen).

Datenwörterbuch:

  • id — Datensatzkennung
  • text — Inhalt der SMS-Nachricht
  • label — Spam oder Ham (ganze Zahl; 0 = Ham und 1 = Spam)

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit PySpark

Kurs anzeigen

Anleitung zur Übung

  • Gib das Datenschema an, indem du Spaltennamen ("id", "text" und "label") und Spaltentypen angibst.
  • Lies Daten aus einer Datei namens „ "sms.csv" “, die durch Trennzeichen getrennt ist.
  • Druck das Schema für den resultierenden DataFrame.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

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.____()
Code bearbeiten und ausführen