Analiza danych

Analiza opisowa

Patryk Dunajewski

2022-12-21

Twoja kolej!

Na podstawie danych dot. rynku nieruchomości z pewnego regionu USA, dokonaj podobnej analizy opisowej.

Naszym celem jest przewidywanie wartości nieruchomości. Zanim jednak się tym zajmiemy na kolejnych zajęciach, postaraj się wykonać pełną analizę opisową wraz z grafiką dla tej bazy danych.

Zobaczmy, jakie mamy zmienne:

glimpse(houses)
## Rows: 506
## Columns: 14
## $ crim    <dbl> 0.00632, 0.02731, 0.02729, 0.03237, 0.06905, 0.02985, 0.08829,…
## $ zn      <dbl> 18.0, 0.0, 0.0, 0.0, 0.0, 0.0, 12.5, 12.5, 12.5, 12.5, 12.5, 1…
## $ indus   <dbl> 2.31, 7.07, 7.07, 2.18, 2.18, 2.18, 7.87, 7.87, 7.87, 7.87, 7.…
## $ chas    <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
## $ nox     <dbl> 0.538, 0.469, 0.469, 0.458, 0.458, 0.458, 0.524, 0.524, 0.524,…
## $ rm      <dbl> 6.575, 6.421, 7.185, 6.998, 7.147, 6.430, 6.012, 6.172, 5.631,…
## $ age     <dbl> 65.2, 78.9, 61.1, 45.8, 54.2, 58.7, 66.6, 96.1, 100.0, 85.9, 9…
## $ dis     <dbl> 4.0900, 4.9671, 4.9671, 6.0622, 6.0622, 6.0622, 5.5605, 5.9505…
## $ rad     <int> 1, 2, 2, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4,…
## $ tax     <int> 296, 242, 242, 222, 222, 222, 311, 311, 311, 311, 311, 311, 31…
## $ ptratio <dbl> 15.3, 17.8, 17.8, 18.7, 18.7, 18.7, 15.2, 15.2, 15.2, 15.2, 15…
## $ black   <dbl> 396.90, 396.90, 392.83, 394.63, 396.90, 394.12, 395.60, 396.90…
## $ lstat   <dbl> 4.98, 9.14, 4.03, 2.94, 5.33, 5.21, 12.43, 19.15, 29.93, 17.10…
## $ medv    <dbl> 24.0, 21.6, 34.7, 33.4, 36.2, 28.7, 22.9, 27.1, 16.5, 18.9, 15…

Nasz zbiór danych zawiera informacje o losowej próbie nieruchomości i różnych cechach dla ich sąsiedztwa.

Ta ramka danych ma 506 wierszy i 14 kolumn (predyktorów). Mamy opisy i podsumowania predyktorów jak poniżej: - crim: wskaźnik przestępczości na mieszkańca według miasta. - zn: proporcja gruntów mieszkalnych przeznaczonych na działki powyżej 25 000 stóp kwadratowych. - indus: proporcja akrów biznesu niedetalicznego na miasto. - chas: zmienna dummy river (= 1, jeśli działka graniczy z rzeką; 0 w przeciwnym razie). - nox: stężenie tlenków azotu (cząsteczek na 10 milionów). - rm: średnia liczba pokoi na mieszkanie. - age: odsetek mieszkań zamieszkanych przez właścicieli zbudowanych przed 1940 rokiem. - dis: średnia ważona odległości do miejskich centrów zatrudnienia. - rad: indeks dostępności do autostrad radialnych. - tax: stawka podatku od nieruchomości o pełnej wartości za 10 000 USD. - ptratio: współczynnik uczeń-nauczyciel według miasta. - black: 1000(Bk - 0.63)^2 gdzie Bk jest odsetkiem czarnoskórych w danym mieście. - lstat: status populacji poniżej progu ubóstwa (procent). - medv: mediana wartości domów zamieszkałych przez właścicieli w 1000$.

plot1 <- ggplot(houses, aes(crim, black)) + 
  geom_abline() +
  geom_jitter(width = 0.1, height = 0.1) +
  labs(title=sprintf("Wskaźnik przestępczości w zależności od odsetka czarnoskorych dla obszarów \ngranicznych z rzeka (1) oraz bez (0)."))
plot1 + facet_wrap(~chas)

# plot1 + facet_wrap(~district)
Tabela 1. Mediana wartości domów zamieszkałych przez właścicieli w 1000$.
1 (N = 20) 2 (N = 24) 3 (N = 38) 4 (N = 110) 5 (N = 115) 6 (N = 26) 7 (N = 17) 8 (N = 24) 24 (N = 132)
Min 11.90 15.70 14.40 7.00 11.80 16.80 17.60 16.00 5.00
Max 50.00 43.80 50.00 50.00 50.00 24.80 42.80 50.00 50.00
Q1 20.48 21.40 21.12 17.58 19.50 18.90 24.30 23.82 11.23
Mediana 22.20 23.85 26.50 20.45 23.00 21.20 26.20 28.25 14.40
Q3 27.23 33.23 34.52 23.65 30.00 23.03 29.60 33.17 19.90
Mean 24.37 26.83 27.93 21.39 25.71 20.98 27.11 30.36 16.40
Odch. std. 8.02 7.87 8.32 6.96 9.33 2.31 6.49 9.73 8.54
IQR 6.75 11.83 13.40 6.07 10.50 4.12 5.30 9.35 8.67
Sx 3.38 5.91 6.70 3.04 5.25 2.06 2.65 4.67 4.34
Var % 0.33 0.29 0.30 0.33 0.36 0.11 0.24 0.32 0.52
IQR Var % 0.30 0.50 0.51 0.30 0.46 0.19 0.20 0.33 0.60
Skośność 1.47 0.65 0.49 1.77 1.21 -0.06 0.66 0.65 2.22
Kurtoza 2.73 -0.76 -0.44 5.38 0.79 -1.35 -0.14 -0.77 6.46
corrplot(cor(houses), method = "number", diag =FALSE)

corrplot.mixed(cor(houses), order = 'AOE')

houses2 <- houses
houses2$rm <- as.factor(round(houses$rm))

density.p

stable.p