Klasyfikacja metodą kNN

Dziś będziemy analizować dane o kwiatach z różnych odmian Irysów (pochodzące od R. Fishera).

Zadanie 0.

library(class)

summary(iris)

plot(iris)

Zadanie 1. Spróbujmy poklasyfikować nasze przykłady irysów na podstawie dlugości i szerokości płatków tych kwiatów przy użyciu metody kNN (funkcja knn). Jak dobrze jesteśmy w stanie poklasyfikować te przykłady w zależności od k jeśli chodzi o czułość i specyficzność?

Zadanie 2. Spróbuj użyć  metody knn.cv aby oszacować jakość klasyfikacji w walidacji krzyżowej. Jak oszacowanie jakości zmienia się w zależności od liczności podziału zbioru obserwacji?

Zadanie 3. Przypomnij sobie także metodę lda z pakietu MASS i użyj jej do tego samego zbioru przy użyciu walidacji krzyżowej.

 

Analiza dyskryminacyjna

Wybierz sobie jeden z plików z danymi do zadania zaliczeniowego.

Przeczytaj rozdział 4 z “Na przełąj przez data mining” .

Spróbuj użyć lda i qda z pakietu MASS do predykcji jakościowej choroby  na podstawie danych ilościowych (wzrost waga itp.).

Używając pakietu ROCR wykreśl wykresy ROC i Precision/Recall dla swojego klasyfikatora.

 

 

Zadanie Zaliczeniowe

Będziemy rozpatrywać dane hipotetycznych pacjentów pobrane z mojej strony www

Mamy tam wielu pacjentów, i dla każdego pomierzone różne zmienne. Severity – to dolegliwość: jeśli =0 to pacjent zdrowy, jeśli nie, to jest to ilościowa miara dokuczliwości.

1. Znajdź mutacje odpowiadające za powstawanie choroby i wpływające na stopień dolegliwości. Oszacuj statystyczną istotność (p) i współczynnik błędów I rodzaju (FDR).

2. Czy choroba zależy od ilościowych wskaźników (wzrost, waga, cisnienie)? Spróbuj określić model liniowy nie zawierający zmiennych nie wpływających na wynik.

Każdy wybiera sobie jeden zbiór danych, odsyłamy skrypt w R i krótki raport z wnioskami.

Termin: do 4.maja 2014.

 

Zajęcia 5 – regresja do wielu zmiennych

Popatrzmy na zbiory danych:

  • Dzielnice Denver (zmienne to : populacja (X1), % zmiany populacji (X2), % dzieci <18 w populacji (X3), % korzystających z darmowych obiadów (X4), zmiana dochodów (X5), wskaźnik przestępczości (/1000 mieszkańców)(X6), zmiana wsk. przestępczości (X7)). Dane pochodzą z Piton foundation
  • Samochody (dane pochodzą z Kelly Blue Book)

Zadanie 1. Wczytaj te dane do R’a przy pomocy funkcji read.csv. Zwróć uwagę na inne prametry np (sep=”t”)

Zadanie 2. Wyrysuj zależności parami przy pomocy funkcji plot()

Zadanie 3. Znajdź dobry model liniowy opisujący  wsp. przestępczośći (X6) i zmiane przestepczości (X7)

Zadanie 4. Znajdz model liniowy opisujący dobrze cenę samochodu

Zadanie 5. Które zmienne mają największy wplyw na zmienne objasniane

Zadanie 6. Jak zachowuja sie reszty w wyznaczonych modelach liniowych

Zadanie 7. Sprobuj zainstalowac pakiet glmnet i znalezc oszczedne modele opisujace zmiennosc przestepczosci w dzielnicach

Zajęcia 4 – korelacja +regresja

Dziś głównie o korelacji i regresji.

Zadanie 1.

Wygeneruj próbki losowe, zmiennych x i y niezależnych, normalnych. Wyświetl je przy pomocy funkcji scatterplot i policz dla nich współczynnik korelacji Pearsona ( funkcja cor(x,y) ). Jak zmienia się rozkład korelacji w zależności od wariancji rozkładów i rozmiaru próby (np. duże próby o małej wariancji vs małe próby o dużej wariancji)?

Zadanie 2.

Wygeneruj próbę, gdzie zmienne x i y są istotnie zalażne, ale współczynnik korelacji Pearsona jest bliski zera (np. krzyż, obwarzanek lub rogalik). Czy można umiesz w tych trzech przypadkach zaproponować takie przekształcenie f, że korelacja (f(Y),x) jest istotna?

Zadanie 3.

Wygeneruj próby X i Y w następujący sposób: wybierz srednie mx1, mx2, my1, my2 i wylosuj po 50 obserwacji x_1..x_50 ze srednia mx1, x_51..x_100 ze srednia mx2, y_1..y_50 ze srednia my1 i y_51..y_100 ze srednia my2 (wariancja zawsze równa 1). Rozważ 3 przypadki:

  • 1 ==mx1==mx2, my1==my2==100
  • 1 == mx1==my1, mx2== my2 == 100
  • 1 == mx1==mx2 == my1,  my2 == 100

Wyrysuj te rozkłady przy pomocy funkcji scatterplot.  Policz współczynniki korelacji Pearson’a dla tych pzykładów. Przy pomocy funkcji summary(lm(y ~ x)) policz współczynniki korelacji i ich istotność. Czy z istotnej wartości korelacji Pearson’a można wnioskować zależność liniową?

Zadanie 4.

Wylosuj zmienne x i y, przy czym niech y = cdf (x) + N(0,0.1) (dystrybuanta rozkładu normalnego + niewielkie zaburzenie losowe). Policz współczynnik korelacji Pearsona i Spearmana dla y~x

Zajęcia nr 3.


Zacznijmy od generowania losowych liczb z rozkładu normalnego (przydatna funkcja to rnorm). Weźmy przykład biathlonistki, która strzela do tarczy. Niech zmienna losowa x oznacza odchylenie jej strzału od środka tarczy (1-wymiarowe).

Zadanie 1. Wygeneruj zadaną liczbę (np. 100) wyników strzałów z celownikiem dobrym (srednia 0) i tyle samo z celownikiem przesunietym w górę (średnia >0) lub przesuniętym w dół (średnia <0). Sprawdź testem t-Studenta (t.test), czy można rozpoznać te dwie sytuacje.

Zadanie 2. Spróbuj oszacować (np. metodą prób i błędów) ile strzałów trzeba wykonać (przy założeniu różnicy średnich=1) aby móc rozróżnić celownik dobry od popsutego.

Zadanie 3. Dla zadanej liczby n strzałów wygeneruj dużo (>1000) prób po n i policz ich p wartości, wygeneruj rozkład p-wartości (przy pomocy pakietu qvalue) i oszacuj FDR

Zadanie 3. Wróćmy do zagadnienia kostek do gry. Wygeneruj beczkę (np. 10000) kostek do gry nieobciążonych i dołóż do nich garść (np. 100) kostek obciążonych na 6ce. Dla każdej kostki wykonaj N rzutów kostką i zbadaj wynik testem chi^2 (chisq.test). Zobacz jak FDR zależy od obciążenia kostki (np. p(6)=1/2 vs. p(6)=0.9).

Zadanie 4. Wykonaj wykresy qq (qqplot) dla strzałów biatlonistek karabinem dobrym i popsutym. Porównaj je do wykresu q-q pomiędzy rozkładem z jednego karabinu a rozkładem pochodzącym z mieszaniny strzałów z dwóch karabinów).

Zadanie 5. Na podstawie wybranej siatki centylowej określ statystyczną istotność zależnośći wagi od wzrostu testem f z ANOVA (aov())

 

Zajęcia 2 testowanie wielu hipotez

Zajmiemy się dziś testowaniem wielu hipotez.

Zadanie 1.

Spróbuj wygenerować 100 różnych wyników eksperymentu dla schematów testu Fisher’a (próbowanie herbaty) i schematu Bernoulliego (dziesięciokrotny rzut monetą) przy założeniu hipotezy zerowej. Zobacz jak często popełniają błedy I rodzaju testy phyper i pbinom przy zastosowaniu poprawki Bonferroniego lub bez niej.

Zadanie 2.

Zainstaluj pakiet qvalue z bioconductor’a Przeczytaj manual i zastosuj go  (qvalue.gui) do p-wartości uzyskanych w Zad 1.

Przydatne funkcje:

rhyper,runif,rbinom, phyper, pbinom, write, scan, for

Zajęcia 1.

Slajdy do wykładu 1

Dziś spróbujemy oswoić środowisko R. Program na dziś, to proste obliczenia, liczby, wektory, definiowanie ich “ręcznie”.

Można oprzeć się np. na notatkach P. Biecka do wprowadzenia do R (tutaj http://www.biecek.pl/semestr/stats/ )

Naszym zadaniem na dziś jest odpowiedzieć na pytania:

Czy p. Bristol naprawdę potrafiła zgadywać?

Na jakim poziomie istotności musielibyśmy odrzucać hipotezy, żeby móc tę hipotezę zerową odrzucić?

Jak wyglądałaby sytuacja, gdybyśmy rozważali problem “dwustronny”?

Zadanka “biologiczne” z ostatniego slajdu.

Przydatne funkcje R:

help()

phyper()

q()