1. Учиться
  2. /
  3. Courses
  4. /
  5. Python으로 배우는 금융 분야 Machine Learning

Connected

Exercise

데이터 표준화하기

K-nearest neighbors(KNN)와 neural networks 같은 일부 모델은 스케일링된 데이터에서 더 잘 작동해요. 따라서 데이터를 표준화하겠습니다.

또한 feature importance에 따라 중요하지 않은 변수(요일)를 제거하기 위해 .iloc[]로 features DataFrame을 인덱싱하겠습니다. KNN은 거리를 사용해 비슷한 점을 찾아 예측하므로, 값의 스케일이 큰 feature가 작은 feature를 압도하게 됩니다. 스케일링은 이를 바로잡아 줍니다.

sklearn의 scale()은 평균을 0, 표준편차를 1로 맞추는 표준화를 수행해요. 이상적으로는 학습 데이터에는 StandardScaler의 fit_transform()을, 테스트 데이터에는 fit()을 사용해야 하지만, 여기서는 코드가 15줄로 제한되어 있어 scale()을 사용합니다.

데이터를 스케일링한 뒤에는 히스토그램을 그려서 제대로 적용되었는지 확인하겠습니다.

Инструкции

100 XP
  • .iloc을 사용해 학습/테스트 features에서 요일 feature를 제거하세요(요일은 마지막 4개 feature예요).
  • sklearn의 scale()로 train_features와 test_features를 표준화하고, 결과를 각각 scaled_train_features, scaled_test_features에 저장하세요.
  • 첫 번째 서브플롯(ax[0])에 스케일링하지 않은 train_features에서 14일 RSI 이동 평균([:, 2]로 인덱싱)의 히스토그램을 그리세요.
  • 두 번째 서브플롯(ax[1])에 표준화된 14일 RSI 이동 평균의 히스토그램을 그리세요.