Boston pochodzi z pakietu MASS i zawiera informacje dotyczące różnych aspektów życia, takich jak: przestępczość, zanieczyszczenie powietrza, dostęp do szkół i usług, czy struktura demograficzna, które mają wpływ na ceny mieszkań. Obserwacje pochodzą z lat 70. XX wieku. Jest to zbiór głównie używany do analizy czynników wpływających na cenę nieruchomości. Zbiór zawiera 506 obserwacji.
crim: wskaźnik przestępczości na 100.000 mieszkańców
zn: procent terenów mieszkalnych przeznaczonych na działki
indus: procent obszarów przemysłowych w mieście
chas: zmienna binarna (0 lub 1), wskazująca, czy dana dzielnica graniczy z rzeką Charles (0 = nie, 1 = tak)
nox: stężenie tlenków azotu w powietrzu (w ppm)
rm: średnia liczba pokoi w mieszkaniach w danej dzielnicy
age: procent budynków zbudowanych przed 1940 rokiem
dis: wskaźnik odległości od 5 głównych centrów pracy w Boston
rad: wskaźnik dostępu do autostrad w danej dzielnicy
tax: stawka podatku od nieruchomości (na 10.000 dolarów)
ptratio: stosunek liczby uczniów do nauczycieli w szkołach publicznych
black: wskaźnik proporcji osób czarnoskórych w prowincji
lstat: procent osób o niskim statusie ekonomicznym
medv: medianowa wartość domu w tysiącach dolarów (Medianowa wartość domów to wartość, która dzieli zbiór cen domów na dwie równe części: połowa domów ma wartość mniejszą lub równą tej medianie, a druga połowa większą lub równą)
Skośność
crim 5.21
zn 2.22
indus 0.29
chas 3.40
nox 0.73
rm 0.40
age -0.60
dis 1.01
rad 1.00
tax 0.67
ptratio -0.80
black -2.88
lstat 0.90
medv 1.10
Analiza graficzna danych
Plot
Wykres przedstawia relację między średnią liczbą pokoi na mieszkanie a medianową wartością nieruchomości (w tysiącach dolarów). Zauważamy trend, który wskazuje na to, że większa liczba pokoi jest związana z wyższą wartością nieruchomości.
Code
plot(rm, medv,xlab ="rm - Średnia liczba pokoi w mieszkaniach",ylab ="medv - Medianowa wartość domu",main ="Zależność między liczbą pokoi, a wartością nieruchomości",pch =19, col ="#6F4E37")grid()
Boxplot
Wykres przedstawia relację między zaokrągloną liczbą pokoi a wskaźnikiem przestępczości. Zauważalny jest trend wskazujący, że dzielnice z mniejszą liczbą pokoi charakteryzują się wyższym poziomem przestępczości. W miarę wzrostu liczby pokoi wskaźnik przestępczości maleje, co sugeruje, że większe mieszkania znajdują się w bezpieczniejszych dzielnicach.
Zaokrąglenie liczby pokoi do wartości całkowitej.
Code
zaokrąglenie =round(rm)
Code
boxplot(crim ~ zaokrąglenie, data = Boston, main ="Zależność między przestępczością, a liczbą pokoi",xlab ="zaokrąglenie - Zaokrąglona liczba pokoi",ylab ="crim - wskaźnik przestępczości",col ="#6F4E37",border ="black")grid()
Histogram
Histogram przedstawia rozkład procentu osób o niskim statusie ekonomicznym. Większość dzielnic charakteryzuje się udziałem osób o niskim statusie ekonomicznym w przedziale 5%-15%, co wskazuje na względnie dobrą sytuację ekonomiczną mieszkańców. Dzielnice z wyższym udziałem takich osób występują znacznie rzadziej.
Code
ggplot(Boston, aes(x = lstat)) +geom_histogram(binwidth =2, fill ="#6F4E37", color ="black") +labs(title ="Procent osób o niskim statusie ekonomicznym",x ="lstat - Procent osób o niskim statusie ekonomicznym",y ="Częstość" ) +theme_minimal() +scale_x_continuous(breaks =seq(0, max(Boston$lstat), by =5)) +scale_y_continuous(breaks =seq(0, 40, by =5)) +theme(plot.title =element_text(hjust =0.5, face ="bold"))
Inny histogram
Histogram przedstawia rozkład stężenia tlenków azotu w dzielnicach Bostonu. Na podstawie tego wykresu możemy powiedzieć, że najwięcej dzielnic charakteryzuje się stężeniem NOX w przedziale od 0.4 do 0.6 ppm, co wskazuje, no to, że większość dzielnic ma stosunkowo dobrą jakość powietrza. Jest mniej dzielnic z wyższym poziomem zanieczyszczenia.
Code
ggplot(Boston, aes(x = nox)) +geom_histogram(binwidth =0.05, fill ="#6F4E37", color ="black") +labs(title ="Stężenie tlenków azotu w powietrzu",x ="nox - Stężenie tlenków azotu",y ="Liczba dzielnic" ) +theme_minimal() +scale_x_continuous(breaks =seq(0.3, 0.9, by =0.1)) +scale_y_continuous(breaks =seq(0, 100, by =10)) +theme(plot.title =element_text(hjust =0.5, face ="bold"))
Korelacja
Macierz korelacji przedstawia siłę i kierunek zależności między róznymi zmiennymi. Jaśniejsze kolory ukazują silną dodatnią korelację, natomiast ciemniejsze na ujemną, a wartości bliskie 0 oznaczają brak istotnej zależności.
Wykres rozrzutu przedstawia zależność między średnią liczbą pokoi w mieszkaniach w danej dzielnicy a medianową wartością nieruchomości. Zauważamy, że większa liczba pokoi oznacza wyższą wartość nieruchomości. Czerwona linia regresji wskazuje dodatnią zależność, a szary obszar przedstawia przedział ufności.
Code
ggplot(Boston, aes(x = rm, y = medv)) +geom_point(color ="#6F4E37", size =2) +labs(title ="Wykres rozrzutu - Liczba pokoi a Wartość nieruchomości",x ="rm - Średnia liczba pokoi w mieszkaniach w danej dzielnicy",y ="medv - Medianowa wartość domu" ) +theme_minimal() +geom_smooth(method ="lm", color ="red", linetype ="dashed") +theme(plot.title =element_text(hjust =0.5, size =14, face ="bold") )
Animacja
Animacja przedstawia zależność między średnią liczbą pokoi w mieszkaniach a medianową wartością nieruchomości uwzględniając wpływ stawki podatkowej tax. Dzięki animacji możemy zobaczyć, jak zmienia się relacja między zmiennymi w różnych przedziałach podatków.
Code
ggplot(Boston, aes(x = rm, y = medv, size = tax, color = tax)) +geom_point(alpha =0.7) +scale_color_gradient(low ="#56B1F7", high ="#132B43") +labs(title ="Animacja - Liczba pokoi a Wartość nieruchomości",subtitle ="Zmiana w zależności od stawki podatku",x ="rm - Średnia liczba pokoi w mieszkaniach w danej dzielnicy",y ="medv - Medianowa wartość domu",size ="Podatek",color ="Podatek" ) +theme_minimal() +theme(plot.title =element_text(hjust =0.5, size =16, face ="bold"),plot.subtitle =element_text(hjust =0.5, size =12) ) +transition_states(states =cut(Boston$tax, breaks =10), transition_length =2,state_length =1 ) +ease_aes('linear')
Line plot
Wykres przedstawia zmienność udziału obszarów przemysłowych na podstawie numeru obserwacji. Możemy zauważyć, że obszary przemysłowe mogą zajmować od bardzo małego procentu, do ponad 20% powierzchni. Widoczne są momenty, gdzie udział obszarów znacząco wzrasta, świadczy to o obszarach uprzemysłowionych.
Code
ggplot(Boston, aes(x =1:nrow(Boston), y = indus)) +geom_line(color ="#6F4E37") +labs(title ="Zmienność procentu obszarów przemysłowych w mieście",x ="Numer obserwacji",y ="indus - procent obszarów przemysłowych w mieście") +theme_minimal()
Gęstości
Wykres gęstości przedstawia stosunek liczby uczniów do nauczycieli w szkołach publicznych. Na podstawie wykresu możemy powiedzieć, że najwięcej obserwacji występuje w przedziale między 19 a 22, co wskazuje na to, że większość szkół publicznych ma stosunkowo wysoki stosunek liczby uczniów do nauczycieli.
Code
ggplot(Boston, aes(x = ptratio)) +geom_density(fill ="#6F4E37", alpha =0.6) +labs(title ="Wykres gęstości: Stosunek liczby uczniów do nauczycieli w szkołach publicznych",x ="ptratio - Stosunek liczby uczniów do nauczycieli w szkołach publicznych.",y ="Gęstość") +theme_minimal()
Wykres punktowy (z gradientem kolorów)
Wykres punktowy ukazuje zależność między liczbą pokoi a wartością nieruchomości, jasnożółty kolor oznacza wysoki procent osób o niskim statusie ekonomiczny, natomiast brązowy wskazuje na niski procent takich osób. Ponadto możemy stwierdzić, że liczby pokoi oraz wartości nieruchomości są wyższe w regionach, gdzie procent osób o niskim statusie społecznym jest mniejszy.
Code
ggplot(Boston, aes(x = rm, y = medv, color = lstat)) +geom_point(size =3, alpha =0.7) +scale_color_gradient(low ="#6F4E37", high ="yellow") +labs(title ="Liczba pokoi a wartość nieruchomości (zależność od lstat)",x ="rm - Średnia liczba pokoi w mieszkaniach w danej dzielnicy",y ="medv - Medianowa wartość nieruchomości",color ="lstat - Procent osób o niskim statusie ekonomicznym") +theme_minimal()
Wykres skrzypcowy
Poniższy wykres przedstawia,rozklad wartości nieruchomości w zależności od wskaźnika dostępu do autostrad.
Code
ggplot(Boston, aes(x =factor(rad), y = medv, fill =factor(rad))) +geom_violin(alpha =0.7, color ="black") +labs(title ="Rozkład wartości nieruchomości w zależności od wskaźnika dostępu do autostrad",x ="rad - Wskaźnik dostępu do autostrad w danej dzielnicy",y ="medv - Medianowa wartość nieruchomości ",fill ="Wskaźnik dostępu") +theme_minimal()
Wykres konturowy
Wykres konturowy przedstawia zależność między procentem powierzchni przemysłowej w mieście a stężeniem tlenków azotu w powietrzu. Owe kontury wskazują na gęstość obserwacji w różnych obszarach. Linie konturowe wskazują obszary o większej gęstości obserwacji – im gęściej ułożone linie, tym więcej obserwacji w danym zakresie wartości.
Code
ggplot(Boston, aes(x = indus, y = nox)) +geom_density_2d(color ="#6F4E37") +labs(title ="Wykres konturowy - Powierzchnia przemysłowa a Stężenie tlenków azotu",x ="indus - procent obszarów przemysłowych w mieście",y ="nox - Stężenie tlenków azotu w powietrzu") +theme_minimal()
Wykres lizakowy (Lollipop)
Wykres lizakowy przedstawia zależność między odległością od 5 głównych centrów pracy a procentem terenów mieszkalnych przeznaczonych na działki. Możemy zauważyć, że im większy procent terenów mieszkalnych , tym odległość od centrum ma tendencję do wzrostu. Na podstawie tego możemy wysunąc wionski, że tereny o więszej powierzchni (które przeznaczone są na duże działki) mogą znajdować się na obrzeżach miasta.
Code
ggplot(Boston, aes(x =reorder(factor(zn), dis), y = dis)) +geom_segment(aes(xend =factor(zn), yend =0), color ="grey") +geom_point(size =4, color ="#6F4E37") +labs(title ="Wykres Lollipop - Odległość od 5 głównych centrów pracy a procent terenów mieszkalnych przeznaczonych na działki",x ="zn - procent terenów mieszkalnych przeznaczonych na działki",y ="dis - Wskaźnik odległości od 5 głównych centrów pracy w Boston") +theme_minimal()