5000개 포인트 데이터 로딩과 파싱
Clustering은 객체를 유사도가 높은 그룹으로 묶는 비지도 학습 과제입니다. 레이블이 있는 지도 학습과 달리, 클러스터링은 레이블이 없는 데이터를 이해하는 데 활용할 수 있어요. PySpark MLlib에는 클러스터링을 위한 대표 알고리즘인 K-means가 포함되어 있습니다. 이 3단계 연습 문제에서는 5000행과 2개 열로 이루어진 데이터셋에 클러스터가 몇 개인지 알아봅니다. 이를 위해 먼저 데이터를 RDD로 로드하고, 구분자 기준으로 RDD를 파싱한 뒤, KMeans 모델을 실행하고 모델을 평가한 다음, 클러스터를 시각화할 거예요.
첫 번째 단계에서는 데이터를 RDD로 로드하고, 구분자 기준으로 RDD를 파싱하며, 문자열 타입의 데이터를 정수로 변환합니다.
워크스페이스에는 이미 SparkContext sc가 준비되어 있습니다. 또한 5000_points.txt 파일 경로인 file_path 변수도 이미 사용할 수 있어요.
이 연습은 강의의 일부입니다
PySpark로 배우는 빅데이터 기초
연습 안내
5000_points데이터셋을clusterRDD라는 RDD로 로드하세요.- 각 줄을 탭("\t") 기준으로 분할해
clusterRDD를 변환하세요. - 분할한 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(____.____()))