1. 학습
  2. /
  3. 강의
  4. /
  5. PySpark로 데이터 정제하기

Connected

연습 문제

개 픽셀 비율

개 주석 데이터를 파싱하는 마지막 단계는 각 이미지에서 개(들)을 나타내는 픽셀의 비율을 구하는 것입니다. 이 정보를 계산하고 나중에 분석할 수 있도록 컬럼으로 추가하려면, 이 강의에서 배운 다양한 기법을 활용하셔야 해요.

픽셀 비율을 계산하려면, 먼저 각 개를 나타내는 총 픽셀 수를 계산한 다음 이미지 단위로 합산하세요. 바운딩 박스는 다음 공식으로 계산할 수 있어요:

(Xend - Xstart) * (Yend - Ystart)

참고: 이 경우에는 바운딩 박스가 서로 겹치는 가능성은 무시해도 됩니다.

비율은 전체 "dog" 픽셀 수를 이미지의 전체 크기로 나눈 뒤 100을 곱해 계산하세요.
joined_df DataFrame은 이전에 사용하던 그대로예요. pyspark.sql.functions는 F로 별칭이 지정되어 있어요.

지침

100 XP
  • 파이썬 함수를 정의해 튜플의 리스트(개 객체들)를 입력으로 받아 이미지별 "dog" 픽셀의 총합을 계산하세요.
  • 위 함수를 UDF로 만들어 DataFrame에 'dog_pixels'라는 새 컬럼을 생성하세요.
  • 이미지에서 'dog_pixels'의 비율을 나타내는 또 다른 컬럼 'dog_percent'를 만드세요. 값이 0~100% 범위가 되도록 하세요. 컬럼 지정 시 문자열 컬럼명만 사용하세요(예: df.columnname이 아니라 "columnname").
  • 이미지에서 'dog_pixels'가 60%를 초과하는 행을 SQL 스타일 문자열(예: 'columnname > ____')로 필터링해 처음 10개 행을 출력하세요.