W projekcie będą analizowane dane dotyczące jakości powietrza (PM10) z wybranej stacji pomiarowej. Dane będą pochodzić z GIOŚ. Najpierw sprawdzono jak wygląda mapa aktywnych stacji powietrza w Polsce:
Do dalszych analiz wybrano stację MzRadTochter:
Najpierw wyfiltrowano pożądane informacje dla stacji o kodzie MzRadTochter dla lat 2015 i 2016 oraz zmieniono datę tak aby odpowiadała dacie bazy danych ISD NOAA (różnice w strefach czasowych).
Następnie pobrano metadane stacji meteorologicznej znajdujących się najbliżej wybranej wcześniej stacji jakości powietrza. W tym przypadku jest to stacja w Kozienicach oddalona o 33.5 km od stacji jakości powietrza w Radomiu.
## Joining, by = "date"
Najpierw usunięto niepotrzebne kolumny z danymi. Z pozostałych można zauważyć, że brakuje bardzo dużo danych dla “Podstawy chmur”, zatem ta kolumna zostanie dodatkowo usunięta.
## wd ws ceil_hgt visibility
## Min. : 0.0 Min. : 0.000 Min. : 0.0 Min. : 0
## 1st Qu.:130.0 1st Qu.: 2.000 1st Qu.: 30.0 1st Qu.: 6000
## Median :230.0 Median : 2.000 Median : 30.0 Median :16000
## Mean :207.5 Mean : 2.619 Mean : 809.3 Mean :20138
## 3rd Qu.:280.0 3rd Qu.: 3.000 3rd Qu.: 60.0 3rd Qu.:30000
## Max. :360.0 Max. :11.000 Max. :22000.0 Max. :50000
## NA's :1254 NA's :1254 NA's :17472 NA's :700
## air_temp dew_point atmos_pres RH
## Min. :-17.800 Min. :-19.800 Min. : 974.7 Min. :20.81
## 1st Qu.: 2.800 1st Qu.: 0.100 1st Qu.:1012.2 1st Qu.:65.08
## Median : 8.500 Median : 4.800 Median :1017.0 Median :82.31
## Mean : 9.609 Mean : 5.082 Mean :1017.3 Mean :76.81
## 3rd Qu.: 16.100 3rd Qu.: 10.400 3rd Qu.:1022.8 3rd Qu.:92.20
## Max. : 35.700 Max. : 22.000 Max. :1045.6 Max. :99.34
## NA's :700 NA's :700 NA's :700 NA's :700
## pm10
## Min. : 0.3793
## 1st Qu.: 19.2453
## Median : 29.3857
## Mean : 36.8725
## 3rd Qu.: 44.6434
## Max. :363.7774
## NA's :518
Następnie sprawdzono liczbę nieutraconych danych, która jest na poziomie:
## [1] 89.97092
Kompletność danych jest na wysokim poziomie, więc stacja jest odpowiednia i można przejść dalej.
## wd ws visibility air_temp
## Min. : 0.0 Min. : 0.000 Min. : 0 Min. :-17.800
## 1st Qu.:140.0 1st Qu.: 2.000 1st Qu.: 6000 1st Qu.: 2.800
## Median :230.0 Median : 2.000 Median :16000 Median : 8.300
## Mean :208.4 Mean : 2.617 Mean :20254 Mean : 9.443
## 3rd Qu.:280.0 3rd Qu.: 3.000 3rd Qu.:35000 3rd Qu.: 15.900
## Max. :360.0 Max. :11.000 Max. :50000 Max. : 35.400
## dew_point atmos_pres RH pm10
## Min. :-19.800 Min. : 974.7 Min. :20.81 Min. : 0.3793
## 1st Qu.: 0.100 1st Qu.:1012.1 1st Qu.:65.21 1st Qu.: 18.6674
## Median : 4.600 Median :1017.0 Median :82.25 Median : 28.6783
## Mean : 4.943 Mean :1017.3 Mean :76.83 Mean : 36.2942
## 3rd Qu.: 10.200 3rd Qu.:1022.8 3rd Qu.:92.10 3rd Qu.: 44.6434
## Max. : 22.000 Max. :1045.6 Max. :99.34 Max. :363.7774
Z tego co widać dane wyglądają na normalne dla Polski. Żaden wskaźnik nie odbiega normie.
Jak widzimy, korelacje liniowe Pearsona między stężeniem pyłu PM10 a innymi zmiennymi są jedynie na umiarkowanym poziomie, ale wszystkie są statystycznie istotne.
Następnie uruchomiono las losowy do utworzenia predykcji dla stężenia PM10 w roku 2017.
## Random Forest
##
## 15780 samples
## 7 predictor
##
## No pre-processing
## Resampling: Cross-Validated (5 fold)
## Summary of sample sizes: 12624, 12623, 12625, 12624, 12624
## Resampling results across tuning parameters:
##
## mtry RMSE Rsquared MAE
## 1 17.05161 0.6269573 10.422212
## 2 16.26324 0.6510051 9.790692
## 3 16.24755 0.6500926 9.741950
## 4 16.29892 0.6472957 9.804858
## 5 16.29586 0.6471312 9.814171
## 6 16.39973 0.6423468 9.870533
## 7 16.42258 0.6413438 9.880199
## 8 16.35593 0.6442364 9.848490
##
## RMSE was used to select the optimal model using the smallest value.
## The final value used for the model was mtry = 3.
Teraz, kiedy już model został utworzony, można sprawdzić jak zachowuje się on na danych, które nie były wykorzystane do jego uczenia. Pobrano dane meteorologiczne dla roku 2017 dla tej samej stacji w Kozienicach, a następnie wykorzystano utworzony model do oszacowania stężenia pyłu PM10 w tym roku. Utworzono wykres rozrzutu prognozy od obserwacji dla stężeń PM10 w roku 2017.
Wykres pokazuje jak bardzo wyniki prognoz odchylone są od pomiarów stężeń PM10. Zielona linia obrazuje model idealny, a niebieska linię trendu uzyskaną z zebranych danych, o równianiu wyświetlonym na wykresie.
Według zebranych danych prognoza jest zaniżona w stosunku do pomiarów stężenia PM10 na stacji w Radomiu, co jest widoczne w przypadku najwyższych stężeń. Może to wynikać z faktu, że warunki meteorologiczne nie są jedynymi czynnikami wpływającymi na stężenie zanieczyszczenia na danym obszarze.
Wykres trendu prognoz (linia czerwona) od obserwacji stężeń PM10 (linia szara) pozwala na ogólną ocenę zgodności tych dwóch serii danych. Można zauważyć, że wniosek wyciągnięty na podstawie poprzedniego wykresu jest potwierdzony – najwyższe wartości stężeń są zaniżane w danym modelu.