시작하기무료로 시작하기

시각화 사용하기: distplot

종속 변수의 분포를 이해하는 것은 매우 중요하며, 우리가 선택하는 모델 유형이나 전처리에 영향을 줄 수 있어요. 이를 확인하는 좋은 방법은 직접 그려보는 것이지만, PySpark에는 기본 제공 플로팅 기능이 없기 때문에 올바르게 작동하도록 중간 단계를 거쳐야 합니다. 이 연습 문제에서는 'LISTPRICE' 변수를 시각화하고, 왜도(skewness)를 계산하여 분포에 대한 인사이트를 더 얻어 볼 거예요.

matplotlib.pyplotseaborn 패키지는 각각 plt, sns 별칭으로 이미 임포트되어 있습니다.

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

PySpark로 하는 Feature Engineering

강의 보기

연습 안내

  • sample()을 사용해 데이터프레임 df의 50%를 샘플링하세요. 이때 복원 추출은 사용하지 말고, 랜덤 시드는 42로 설정하세요.
  • Spark DataFrame을 toPandas()pandas.DataFrame()으로 변환하세요.
  • seaborndistplot() 메서드로 분포 그래프를 그리세요.
  • pyspark.sql.functions에서 skewness() 함수를 임포트한 뒤, agg() 메서드로 'LISTPRICE' 열의 집계에 대해 왜도를 계산하세요. 계산을 평가하려면 결과에 collect()를 호출하는 것을 잊지 마세요.

실습형 인터랙티브 연습

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

# Select a single column and sample and convert to pandas
sample_df = df.select(['LISTPRICE']).____(____, ____, 42)
pandas_df = sample_df.____()

# Plot distribution of pandas_df and display plot
sns.____(____)
plt.show()

# Import skewness function
from pyspark.sql.functions import skewness

# Compute and print skewness of LISTPRICE
print(df.____({____: ____}).collect())
코드 편집 및 실행