PySpark groupBy 사용하기
앞에서 dask 프레임워크와 DataFrame 추상화를 사용해 계산을 수행하는 방법을 살펴봤어요. 하지만 영상에서 본 것처럼, 빅데이터 세계에서는 데이터 처리를 위해 Spark가 더 널리 쓰이는 선택지이기도 합니다.
이 연습에서는 PySpark 패키지를 사용해 Spark DataFrame을 다룹니다. 데이터는 이전 연습과 동일하게 1896년부터 2016년까지의 올림픽 참가자 정보입니다.
Spark DataFrame인 athlete_events_spark가 작업 공간에 준비되어 있습니다.
이번 연습에서 사용할 메서드는 다음과 같습니다.
.printSchema(): Spark DataFrame의 스키마를 출력합니다..groupBy(): 집계를 위한 그룹화 구문입니다..mean(): 각 그룹의 평균을 계산합니다..show(): 결과를 표시합니다.
이 연습은 강의의 일부입니다
데이터 엔지니어링 입문
연습 안내
athlete_events_spark의 타입을 확인하세요.athlete_events_spark의 스키마를 확인하세요.- 연도별로 묶어서 올림픽 참가자의 평균 나이를 출력하세요. 이때 Spark는 아직 실제 계산을 수행하지 않았다는 점에 유의하세요. 이를 지연 평가(lazy evaluation)라고 합니다.
- 이전 결과에 대해
.show()를 호출해 평균 나이를 실제로 계산하고 표시하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Print the type of athlete_events_spark
print(____(athlete_events_spark))
# Print the schema of athlete_events_spark
print(athlete_events_spark.____())
# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____))
# Group by the Year, and find the mean Age
print(athlete_events_spark.____('Year').mean(____).____())