시작하기무료로 시작하기

ID 필드 추가하기

데이터를 다룰 때는 특정 필드만 선택해 다양한 연산을 수행할 때가 있어요. 이번에는 DataFrame에서 모든 고유한 투표자 이름을 찾고, 각 항목에 고유 ID 번호를 추가해 보세요. Spark의 ID는 DataFrame의 파티션을 기준으로 부여되므로, ID 값이 실제 행 수보다 훨씬 클 수 있다는 점을 기억하세요.

또한 Spark의 지연(lazy) 처리 특성상, ID는 액션이 수행될 때 실제로 생성되며 데이터셋 크기에 따라 다소 임의적으로 보일 수 있어요.

작업 공간에는 spark 세션과 DallasCouncilVotes.csv.gz 파일을 담은 Spark DataFrame df가 준비되어 있어요. pyspark.sql.functions 라이브러리는 별칭 F로 사용할 수 있어요.

이 연습은 강의의 일부입니다

PySpark로 데이터 정제하기

강의 보기

연습 안내

  • VOTER NAME 열에서 고유한 항목을 선택해 voter_df라는 새 DataFrame을 만드세요.
  • voter_df DataFrame의 행 수를 세세요.
  • 적절한 Spark 함수를 사용해 ROW_ID 열을 추가하세요.
  • ROW_ID가 가장 큰 상위 10개 행을 표시하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Select all the unique council voters
voter_df = df.____(df["VOTER NAME"]).____()

# Count the rows in voter_df
print("\nThere are %d rows in the voter_df DataFrame.\n" % ____)

# Add a ROW_ID
voter_df = voter_df.____('ROW_ID', F.____())

# Show the rows with 10 highest IDs in the set
voter_df.orderBy(voter_df.____.desc()).show(____)
코드 편집 및 실행