ПочатиПочніть безкоштовно

Завантаження та розбір даних «5000 points»

Кластеризація — це завдання некерованого навчання, у якому об'єкти групують у кластери з високою подібністю. На відміну від керованих задач, де дані мають мітки, кластеризація допомагає впорядкувати немарковані дані. У PySpark MLlib є популярний алгоритм K-means для кластеризації. У цій вправі з трьох частин ви з'ясуєте, скільки кластерів є в наборі даних із 5000 рядків і 2 стовпців. Для цього ви спочатку завантажите дані в RDD, розберете RDD за роздільником, запустите модель KMeans, оціните модель і зрештою візуалізуєте кластери.

У першій частині ви завантажите дані в RDD, розберете RDD за роздільником і перетворите рядковий тип даних на цілі числа.

Пам'ятайте, що у вашому робочому середовищі доступний SparkContext sc. Також змінна file_path (шлях до файла 5000_points.txt) уже доступна у вашому середовищі.

Ця вправа є частиною курсу

Основи Big Data з PySpark

Переглянути курс

Інструкції до вправи

  • Завантажте набір даних 5000_points в RDD з назвою clusterRDD.
  • Перетворіть clusterRDD, розділивши рядки за табуляцією ("\t").
  • Перетворіть розділений RDD, щоб створити список цілих чисел для двох стовпців.
  • Підтвердьте, що в наборі даних є 5000 рядків.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Load the dataset into an RDD
clusterRDD = sc.____(file_path)

# Split the RDD based on tab
rdd_split = clusterRDD.____(lambda x: ____.split(____))

# Transform the split RDD by creating a list of integers
rdd_split_int = rdd_split.____(lambda x: [int(____), int(x[1])])

# Count the number of rows in RDD 
print("There are {} rows in the rdd_split_int dataset".format(____.____()))
Редагувати та запускати код