# ZAD 1 ankieta <- read.table("http://ls.home.amu.edu.pl/data_sets/ankieta.txt", header = TRUE) empiryczny <- data.frame(cbind(liczebnosc = table(ankieta$wynik), procent = prop.table(table(ankieta$wynik)))) print(empiryczny) tylko_pods <- ankieta[ankieta$szkola == "p", ] empiryczny_pods <- data.frame(cbind(liczebnosc = table(tylko_pods$wynik), procent = prop.table(table(tylko_pods$wynik)))) print(empiryczny_pods) barplot(table(ankieta$wynik), xlab = "Odpowiedzi", ylab = "Odpowiedzi", main = "Rozkład empiryczny zmiennej wynik") barplot(prop.table(table(ankieta$wynik)), xlab = "Odpowiedzi", ylab = "Odpowiedzi", main = "Rozkład empiryczny zmiennej wynik") pie(table(ankieta$wynik)) barplot(prop.table(table(ankieta$wynik, ankieta$plec)), beside = TRUE, col = 1:5, legend = levels(ankieta$wynik)) # ZAD 2 load(url("http://ls.home.amu.edu.pl/data_sets/Centrala.RData")) head(Centrala) empiryczny <- data.frame(cbind(liczebnosc = table(Centrala$Liczba), procent = prop.table(table(Centrala$Liczba)))) print(empiryczny) barplot(table(Centrala$Liczba), col = 1:5, legend = levels(Centrala$Liczba)) barplot(prop.table(table(Centrala$Liczba)), col = 1:5, legend = levels(Centrala$Liczba)) pie(table(Centrala$Liczba)) mean(Centrala$Liczba) median(Centrala$Liczba) sd(Centrala$Liczba) sd(Centrala$Liczba) / mean(Centrala$Liczba) * 100 # ZAD 3 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) # tworzymy przedziały breaks_hist <- hist(x, plot = FALSE)$breaks empiryczny <- data.frame(cbind(liczebnosc = table(cut(x, breaks = breaks_hist)), procent = prop.table(table(cut(x, breaks = breaks_hist))))) print(empiryczny) hist(x) # lwd to grubość, density to funkcja gęstości hist(x, col = "lightblue", probability = TRUE) lines(density(x), col = "green", lwd = 2) boxplot(x) mean(x) median(x) sd(x) sd(x) / mean(x) * 100 install.packages("e1071") library(e1071) skewness(x) kurtosis(x) # ZAD 4 wspolczynnik_zmiennosci <- function(x, na.rm = FALSE) { if (!is.numeric(x)) stop("argument nie jest liczbą") if (na.rm) x <- na.omit(x) return(100 * sd(x) / mean(x)) } x <- c(1, NA, 3) wspolczynnik_zmiennosci(x) wspolczynnik_zmiennosci(x, na.rm = TRUE) wspolczynnik_zmiennosci() wspolczynnik_zmiennosci(c("x", "y"))