1. 학습
  2. /
  3. 강의
  4. /
  5. R로 하는 Supervised Learning: 회귀

Connected

연습 문제

자전거 대여 건수를 예측하는 모델 적합하기

이 연습 문제에서는 날씨, 요일 유형(공휴일, 근무일, 주말), 그리고 시간대를 입력으로 사용해 한 시간 동안 대여된 자전거 수를 예측하는 모델을 만들어 보겠습니다. 7월 한 달치 데이터로 모델을 학습합니다.

이 데이터 프레임에는 다음 열이 있습니다:

  • cnt: 해당 시간에 대여된 자전거 수(결과 변수)
  • hr: 하루 중 시간(0-23, factor)
  • holiday: TRUE/FALSE
  • workingday: 공휴일도 주말도 아니면 TRUE, 그렇지 않으면 FALSE
  • weathersit: 범주형, "Clear to partly cloudy"/"Light Precipitation"/"Misty"
  • temp: 섭씨 기준 정규화된 기온
  • atemp: 섭씨 기준 정규화된 체감 온도
  • hum: 정규화된 습도
  • windspeed: 정규화된 풍속
  • instant: 시간 인덱스 — 데이터셋 시작 이후 경과 시간(시간 단위, 변수 아님)
  • mnth 및 yr: 월과 연도 인덱스(변수 아님)

카운트 모델을 적합하려면 glm()(docs) 사용 시 family = poisson 또는 family = quasipoisson을 지정해야 한다는 점을 기억하세요.

입력 변수가 많으므로, 편의를 위해 결과 변수와 입력 변수를 각각 변수에 지정하고, paste()(docs)를 사용해 모델 수식을 나타내는 문자열을 조립하겠습니다.

bikesJuly 데이터 프레임을 사용할 수 있습니다. 결과 변수 이름과 입력 변수 이름은 각각 outcome과 vars 변수에 미리 로드되어 있습니다.

지침

100 XP
  • 입력의 함수로서 cnt를 표현하는 수식 fmla를 빈칸에 채워 만들어 보세요. 그리고 출력해 보세요.
  • bikesJuly$cnt의 평균(mean())과 분산(var())을 계산하세요.
    • poisson 회귀와 quasipoisson 회귀 중 어느 것을 사용해야 할까요?
  • glm()으로 bikesJuly 데이터에 모델을 적합해 bike_model을 만드세요.
  • glance()로 모델의 적합 통계를 확인하세요. glance()의 출력을 변수 perf에 할당하세요.
  • 모델의 pseudo-R-squared를 계산하세요.