Încărcarea datelor SMS spam
Ai văzut că tipurile de date pot fi deduse direct din date. Uneori este mai convenabil să ai control direct asupra tipurilor de coloane. Poți face acest lucru definind o schemă explicită.
Fișierul sms.csv conține o selecție de mesaje SMS clasificate ca „spam" sau „ham". Aceste date au fost adaptate din UCI Machine Learning Repository. În total sunt 5.574 de mesaje SMS, dintre care 747 au fost etichetate ca spam.
Note despre formatul CSV:
- nu există un rând de antet și
- câmpurile sunt separate printr-un punct și virgulă (acesta nu este separatorul implicit).
Dicționar de date:
id— identificatorul înregistrăriitext— conținutul mesajului SMSlabel— spam sau ham (număr întreg; 0 = ham și 1 = spam)
Acest exercițiu face parte din cursul
Machine Learning cu PySpark
Instrucțiuni pentru exercițiu
- Specifică schema de date, indicând numele coloanelor (
"id","text"și"label") și tipurile acestora. - Citește datele dintr-un fișier delimitat numit
"sms.csv". - Afișează schema DataFrame-ului rezultat.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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.____()