Ćwiczenie 1.

Uruchom demo estymatora funkcji gęstości kernel. Zmieniaj zarówno dane wejściowe, jak i opcje estymatora - szerokość pasma oraz rodzaj funkcji jądrowej. Czy widzisz istotne różnice w oszacowaniu?

Mniejsza szerokość pasma sprawia, że wykres pokazuje więcej szczegółów, ale może być „zbyt dopasowany” do danych, pokazując przypadkowe fluktuacje. Większa szerokość wygładza wykres, ale może ukrywać mniejsze różnice w danych. Różne typy jądra, jak Gaussian czy Epanechnikov, wpływają na to, jak kształtuje się gęstość – mogą bardziej lub mniej wygładzać dane w poszczególnych miejscach.

Ćwiczenie 2.

Wykorzystując dowolną funkcję R do estymacji funkcji gęstości oszacuj jej przebieg dla wynagrodzeń (zbiór danych salaries) strażaków w San Francisco. Wykorzystaj metody graficzne dostępne w pakiecie ggplot2. Mile widziane przekroje oraz odpowiedzi na pytania badawcze zadane na wstępie.

table(salaries_firefighters$Year)
## 
## 2014 
##  738

Wszystkie dane na temat wynagrodzeń strażaków pochodzą z roku 2014, co uniemożliwia sprawdzenie jak płace zmieniały się w czasie.

library(ggplot2)
ggplot(salaries_firefighters, aes(x = TotalPay)) +
  geom_density(fill = "cornflowerblue", alpha = 0.5) +
    labs(title = "Kernel Density Estimate for Firefighters' Total Pay",
       x = "Total Pay (in dollars)",
       y = "Density") +
  theme_minimal()

Szczyt rozkładu znajduje się w przedziale około 140,000 - 160,000 USD, co sugeruje, że większość strażaków może liczyć na zarobki w tym przedziale. Spadek po 160,000 USD oznacza, że wyższe wynagrodzenia są rzadsze, a sam wykres przypomina lekko rozkład normalny, w którym to większość pracowników zarabia kwoty równe medianie, a im wynagrodzenie bardziej różni się od mediany, tym mniej osób ma takie zarobki. Można jednak zauważyć, że nie jest to do końca rozkład normalny, swoim wyglądem przypomina również rozkład prawostronnie skośny, co co oznacza, że zauważalna jest obecność pracowników z bardzo wysokim wynagrodzeniem całkowitym, ale występuje to rzadziej niż niskie wynagrodzenie .

hist(salaries_firefighters$TotalPay,main="Total Pay", xlab="Pay (in dollars)")
abline(v = mean(salaries_firefighters$TotalPay),lty="dashed")
abline(v = median(salaries_firefighters$TotalPay))
legend("topright", legend=c("Mediana","Średnia"),lty=c("solid","dashed"))

hist(salaries_firefighters$TotalPay,main="Total Pay, Zoomed-in", xlab="Pay (in dollars)", xlim=c(60000,270000), breaks=100)

benf <- as.numeric(salaries_firefighters$Benefits)
hist(benf,main="Benefits", xlab="Pay (in dollars)")
abline(v = mean(benf),lty="dashed")
abline(v = median(benf))
legend("topright", legend=c("Mediana","Średnia"),lty=c("solid","dashed"))

Największa częstotliwość (około 500 osób) dotyczy przedziału wynagrodzeń bliskiego 40,000 dolarów, co sugeruje, że większość badanych osób otrzymuje benefity bliskie tej wartości. Histogram jest asymetryczny a średnia jest nieco mniejsza od mediany, z długim ogonem po lewej stronie, co jest typowe dla lewoskośnego rozkładu. Można więc przypuszczać, że wynagrodzenia są skupione wokół mediany, a lewoskośność wykresu wskazuje na mniejszą liczbę pracowników zarabiających wynagrodzenia znacznie poniżej średniej.