Statystyka/zajecia4/zadania.R

111 lines
3.3 KiB
R

# ZAD 1
load(url("http://ls.home.amu.edu.pl/data_sets/czas_oczek_tramwaj.RData"))
# odchylenie standardowe dla próby to musimy dodatkowo pomnozyc przez ten pierwiastek na koncu!!!
a_est_mm <- mean(czas_oczek_tramwaj) -
sqrt(3) * sd(czas_oczek_tramwaj) * sqrt((length(czas_oczek_tramwaj) - 1) / (length(czas_oczek_tramwaj)))
b_est_mm<- mean(czas_oczek_tramwaj) +
sqrt(3) * sd(czas_oczek_tramwaj) * sqrt((length(czas_oczek_tramwaj) - 1) / (length(czas_oczek_tramwaj)))
# metoda największej warygodności
a_est <- min(czas_oczek_tramwaj)
b_est <- max(czas_oczek_tramwaj)
# z biblioteki
library(EnvStats)
EnvStats::eunif(czas_oczek_tramwaj, method = "mme")
#histogram
hist(czas_oczek_tramwaj,
xlab = "Czas oczekiwania na tramwaj",
main = "Rozklad empiryczny czasu oczekiwania na tramwaj",
probability = TRUE)
#rzeczywista funkcja gęstości
lines(density(czas_oczek_tramwaj), col = "red", lwd = 2)
# metoda najwiekszej warygodnosci
curve(dunif(x, a_est, b_est),
add = TRUE, col = "blue", lwd = 2)
#metoda momentów
curve(dunif(x, a_est_mm, b_est_mm),
add = TRUE, col = "green", lwd = 2)
legend(x = 5, y = 0.04, legend = c("empiryczny", "teoretyczny ENW", "teoretyczny EMM"),
col = c("red", "blue", "green"), lwd = 2)
# ZAD2
load(url("http://ls.home.amu.edu.pl/data_sets/Centrala.RData"))
lambda_est <- mean(Centrala$Liczba)
#porownanie
probs <- dpois(sort(unique(Centrala$Liczba)), lambda = lambda_est)
sum(probs)
counts <- matrix(c(prop.table(table(Centrala$Liczba)), probs), nrow = 2, byrow = TRUE)
rownames(counts) <- c("empiryczny", "teoretyczny")
colnames(counts) <- sort(unique(Centrala$Liczba))
barplot(counts,
xlab = "Liczba zgloszen", ylab = "Prawdopodobienstwo",
main = "Rozklady empiryczny i teoretyczny liczby zgloszen",
col = c("red", "blue"), legend = rownames(counts), beside = TRUE)
#kwanty-kwantyl, linia to moj estymator
qqplot(rpois(length(Centrala$Liczba), lambda = lambda_est), Centrala$Liczba,
xlab = "Kwantyle teoretyczne", ylab = "Kwantyle empiryczne",
main = "Wykres kwantyl-kwantyl dla liczby zgloszen")
qqline(Centrala$Liczba, distribution = function(probs) { qpois(probs, lambda = lambda_est) })
mean(Centrala$Liczba < 4)
ppois(3, lambda = lambda_est)
# ZAD3 - jest opis w pdf jak zrobic
# ZAD4
x <- c(0.9, 6.2, 2.1, 4.1, 7.3,
1.0, 4.6, 6.4, 3.8, 5.0,
2.7, 9.2, 5.9, 7.4, 3.0,
4.9, 8.2, 5.0, 1.2, 10.1,
12.2, 2.8, 5.9, 8.2, 0.5)
lambda_est <- mean(x^2)
#porownanie
hist(x,
xlab = "Srednia szybkosci wiatru",
main = "Rozklady empiryczny i teoretyczny sredniej szybkosc wiatru",
probability = TRUE,
col = "lightgreen")
lines(density(x), col = "red", lwd = 2)
curve(VGAM::drayleigh(x, sqrt(lambda_est / 2)),
add = TRUE, col = "blue", lwd = 2)
legend("topright", legend = c("empiryczny", "teoretyczny"), col = c("red", "blue"), lwd = 2)
#kwantyl-kwantyl
qqplot(VGAM::rrayleigh(length(x), sqrt(lambda_est / 2)), x,
xlab = "Kwantyle teoretyczne", ylab = "Kwantyle empiryczne",
main = "Wykres kwantyl-kwantyl dla sredniej szybkosci wiatru")
qqline(x, distribution = function(probs) { VGAM::qrayleigh(probs, sqrt(lambda_est / 2)) })
mean((x > 4) & (x < 8))
VGAM::prayleigh(8, sqrt(lambda_est / 2)) - VGAM::prayleigh(4, sqrt(lambda_est / 2))
0.5 * sqrt(pi * lambda_est)
lambda_est * (4 - pi) / 4