SMS स्पैम डेटा लोड करना
आपने देखा है कि डेटा टाइप्स को सीधे डेटा से infer करना संभव है. कई बार कॉलम टाइप्स पर सीधा नियंत्रण रखना सुविधाजनक होता है. यह आप explicit स्कीमा परिभाषित करके करते हैं.
फ़ाइल sms.csv में कुछ SMS संदेश शामिल हैं जिन्हें 'spam' या 'ham' के रूप में वर्गीकृत किया गया है. ये डेटा UCI Machine Learning Repository से अनुकूलित किए गए हैं. कुल 5574 SMS हैं, जिनमें से 747 को स्पैम के रूप में लेबल किया गया है.
CSV फ़ॉर्मेट के बारे में नोट्स:
- कोई हेडर रिकॉर्ड नहीं और
- फ़ील्ड्स सेमीकोलन से अलग किए गए हैं (यह डिफ़ॉल्ट सेपरेटर नहीं है).
डेटा डिक्शनरी:
id— रिकॉर्ड पहचानकर्ताtext— SMS संदेश की सामग्रीlabel— स्पैम या हैम (integer; 0 = ham और 1 = spam)
यह अभ्यास पाठ्यक्रम का हिस्सा है
PySpark के साथ Machine Learning
अभ्यास निर्देश
- डेटा स्कीमा निर्दिष्ट करें, कॉलम के नाम (
"id","text", और"label") और कॉलम टाइप्स देते हुए. "sms.csv"नामक delimited फ़ाइल से डेटा पढ़ें.- प्राप्त DataFrame की स्कीमा प्रिंट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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.____()