[Tidy Modeling with R] 4. Ames Housing Data

2023. 9. 10. 18:07·Data Science/Modeling

4장에서는 Ames 주택 데이터에 대해 소개합니다.

 

4 The Ames Housing Data | Tidy Modeling with R

The tidymodels framework is a collection of R packages for modeling and machine learning using tidyverse principles. This book provides a thorough introduction to how to use tidymodels, and an outline of good methodology and statistical practice for phases

www.tmwr.org

탐색적 데이터 분석은 신뢰할 수 있는 모델을 구축하기 위해서 중요한 과정입니다.

데이터셋은 아래와 같은 변수를 포함한 74개의 변수가 있으며 총 2930개의 행으로 구성되어 있습니다.

 

  • 주택 특성 (침실, 차고, 벽난로, 수영장, 현관 등등)
  • 위치
  • 부지 정보 (구역, 형태, 크기 등등)
  • 품질 등급
  • 판매 가격 (Sale Price)

참고로 Ames Housing dataset은 R에서 modeldata 패키지에 포함되어 있습니다. 

 

EDA(Exploratory Data Analysis, 탐색적 데이터 분석)

모델링에서 가장 중요한 종속변수(반응변수) 분포 시각화부터 시작해보겠습니다.

ames %>% 
  ggplot(mapping=aes(x=Sale_Price)) +
  geom_histogram(bins=50, col="white")

  • 히스토그램에서 오른쪽 꼬리가 긴 (right-skewed) 분포를 가지는 것으로 보입니다.
  • 본문에서는 로그변환을 통해 얻는 장점에 대해 설명하고 있습니다. (분산의 안정화 및 판매가격을 음으로 예측하지 않음)

 

다음은 반응변수에 로그변환(Logarithmic transformation)을 적용하여 시각화 한 그래프입니다.

ames %>% 
  ggplot(mapping=aes(x=Sale_Price)) +
  geom_histogram(bins=50, col="white") +
  scale_x_log10()
  
ames <- ames %>% mutate(Sale_Price = log10(Sale_Price))

  • 로그변환 후 비교적 대칭적인 분포를 가집니다
  • 따라서, Sale_Price의 값을 로그변환하여 저장합니다.

 

우리가 원하는 모델링을 하기 위한 데이터의 또 다른 중요한 측면은 지리적 위치와 관련이 있습니다.
지리적(spatial) 정보는 정성적 변수인 Neighborhood와 정량적 변수 longitude(경도), latitude(위도)에 있습니다.
이를 ggmap 패키지를 활용하여 시각적으로 표현했습니다.

center <- ames %>% summarise(lon = median(Longitude),lat = median(Latitude))

ggmap_hide_api_key()
mymap <- get_googlemap(center=c(center$lon, center$lat), urlonly = F, 
                       maptype = "hybrid", zoom = 12, color="color", source="google", 
                       extent = "device")

ggmap(mymap) + 
  geom_point(data=ames, mapping=aes(x=Longitude, y=Latitude, color=Neighborhood), alpha=0.2) +
  theme(legend.position = "none")

  • 첫번째 줄은 지도 이미지를 불러오기 위해서 데이터에서 경도와 위도의 중앙값을 가져오는 코드입니다.
  • ggmap::get_googlemap을 통해 시각화 할 지도 이미지를 불러옵니다.
  • 마지막 줄은 ames에 존재하는 위도와 경도를 사용해 위치를 표현했으며 Neighborhood 변수를 통해 색을 지정하였습니다.

 

시각화를 통해 몇가지 사실을 확인할 수 있습니다. 우선 Ames 중심에는 데이터가 존재하지 않는데, 아이오와 주립 대학교가 위치하기 때문입니다. 또한, 일부 주거 지역은 다른 지역과 다르게 멀리 떨어져 있는 사실에 대해 언급합니다. (본문에서는 좀더 자세하게 설명합니다.)

 

 

참고로, 탐색적 데이터 분석 단계에서 생각해 볼 수 있는 질문은 다음과 같습니다.

  • 개별 (일변량) 변수의 분포에서 이상하거나 눈에 띄는 것이 있습니까? 왜도(Skewness)가 심합니까?
  • 예측변수들 간에 상관관계가 높은 쌍이 있습니까? 
  • 예측변수와 반응변수 사이에 연관성이 있습니까?

 

 

개인적으로 탐색적 데이터 분석이 중요하다고 생각하며 실제 프로젝트나 공모전에서 많은 시간 공들이는 파트 중 하나입니다.

데이터마다 특성이 다르지만 우선적으로 일변량, 이변량 분포 시각화는 기본적으로 진행하면서 분포나 패턴 등을 살펴보는데요,

여기서 생기는 궁금증을 해결하면서 데이터의 이해를 높여가고 모델링에서 좋은 결과로 이어질 수 있는 것 같네요. 

 

저작자표시 비영리 변경금지 (새창열림)

'Data Science > Modeling' 카테고리의 다른 글

[Tidy Modeling with R] 6. Model Fitting with parsnip  (0) 2023.09.11
[Tidy Modeling with R] 5. Data Spliting (데이터 분할)  (0) 2023.09.10
[Tidy Modeling with R] 3. R Modeling Fundamentals  (0) 2023.09.09
[Tidy Modeling with R] 2. Tidyverse  (0) 2023.09.07
[Tidy Modeling with R] 1. Software for modeling  (0) 2023.09.07
'Data Science/Modeling' 카테고리의 다른 글
  • [Tidy Modeling with R] 6. Model Fitting with parsnip
  • [Tidy Modeling with R] 5. Data Spliting (데이터 분할)
  • [Tidy Modeling with R] 3. R Modeling Fundamentals
  • [Tidy Modeling with R] 2. Tidyverse
임파카
임파카
[ML & Statistics] 모바일 버전에서 수식 오류가 있어 PC 환경에서 접속하는 것을 권장합니다.
  • 임파카
    무기의 스탯(Stat)
    임파카
  • 전체
    오늘
    어제
    • Study (149)
      • Data Science (44)
        • Modeling (18)
        • Manipulation (21)
        • Visualization (4)
      • Statistics (59)
        • Mathmetical Statistics (53)
        • Categorical DA (1)
      • Web Programming (17)
      • AI (26)
        • Machine Learning (16)
        • Deep Learning (10)
      • 활동 및 프로젝트 (3)
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
임파카
[Tidy Modeling with R] 4. Ames Housing Data
상단으로

티스토리툴바