---
title: "주택 가격"
author: "Mine Çetinkaya-Rundel"
toc: true
number-sections: true
highlight-style: pygments
format:
  html: 
    code-fold: true
    html-math-method: katex
  pdf:
    geometry: 
      - top=30mm
      - left=30mm
  docx: default
bibliography: references.bib
---

## 소개

이 분석에서는 2020년 11월 무렵 노스캐롤라이나 더럼의 Duke Forest 지역에서 판매된 주택 데이터를 기반으로 주택 매매가를 예측하는 모델을 구축합니다. 먼저 분석에 사용할 패키지를 불러오겠습니다.

```{r}
#| label: load-pkgs
#| code-summary: "Packages"
#| message: false

library(openintro)  # for data
library(tidyverse)  # for data wrangling and visualization
library(knitr)      # for tables
library(broom)      # for model summary
```

탐색적 데이터 분석 결과는 @sec-eda 에, 회귀 모델은 @sec-model 에 제시합니다.

이 분석은 문학적 프로그래밍 [@knuth1984]을 사용해 수행합니다.

## 탐색적 데이터 분석 {#sec-eda}

데이터에는 `{r} nrow(duke_forest)`채의 주택이 있습니다. 탐색적 분석의 일부로 이 주택들의 면적과 가격 간 관계를 시각화하고 요약합니다.

### 데이터 시각화

@fig-histogram 은 `price`와 `area`의 분포를 각각 보여주는 두 개의 히스토그램입니다.

```{r}
#| label: fig-histogram
#| fig-cap: "Histograms of individual variables"
#| fig-subcap:
#|   - "Histogram of `price`s"
#|   - "Histogram of `area`s" 
#| layout-ncol: 2
#| column: page-right

ggplot(duke_forest, aes(x = price)) +
  geom_histogram(binwidth = 50000) +
  labs(title = "Histogram of prices")

ggplot(duke_forest, aes(x = area)) +
  geom_histogram(binwidth = 250) +
  labs(title = "Histogram of areas")
```

@fig-scatterplot 은 두 변수의 관계를 산점도로 보여줍니다.

```{r}
#| label: fig-scatterplot
#| fig-cap: "Scatterplot of price vs. area of houses in Duke Forest"

ggplot(duke_forest, aes(x = area, y = price)) +
  geom_point() +
  labs(title = "Price and area of houses in Duke Forest")
```

### 요약 통계

@tbl-stats 는 두 변수의 기본 요약 통계를 보여줍니다.

```{r}
#| label: tbl-stats
#| tbl-cap: "Summary statistics for price and area of houses in Duke Forest"

duke_forest %>%
  summarise(
    `Median price` = median(price),
    `IQR price` = IQR(price),
    `Median area` = median(area),
    `IQR area` = IQR(area),
    `Correlation, r` = cor(price, area)
    ) %>%
  kable(digits = c(0, 0, 0, 0, 2))
```

## 모델링 {#sec-model}

@eq-slr 에 나타난 형태의 단순 선형 회귀 모델을 적합할 수 있습니다.

$$
price = \hat{\beta}_0 + \hat{\beta}_1 \times area + \epsilon
$$ {#eq-slr}

@tbl-lm 은 이 모델의 회귀 결과를 보여줍니다.

```{r}
#| label: tbl-lm
#| tbl-cap: "Linear regression model for predicting price from area"

price_fit <- lm(price ~ area, data = duke_forest)
  
price_fit %>%
  tidy() %>%
  kable(digits = c(0, 0, 2, 2, 2))
```

::: callout-note
이 분석은 꽤 미완성이지만, 이 문서가 Quarto의 작성 기능을 개략적으로 보여주길 바랍니다!
:::

## References {.unnumbered}
