Загрузка и разбор набора данных из 5000 точек
Кластеризация — это задача обучения без учителя, при которой объекты группируются в кластеры по степени схожести. В отличие от задач с учителем, где данные размечены, кластеризация позволяет находить закономерности в неразмеченных данных. PySpark MLlib включает популярный алгоритм K-средних для кластеризации. В этом упражнении, состоящем из трёх частей, вы определите количество кластеров в наборе данных, содержащем 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(____.____()))