SAD – zadanie zaliczeniowe 1 (10 pkt)

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. W szczególności badano obecność 100 mutacji. Każda mutacja występuje lub nie u każdego z pacjentów. Zakładamy, że ich występowanie jest wzajemnie niezależne od siebie. Mamy pomiary ilościowe wagi, wzrostu i ciśnienia tętniczego (skurczowego i rozkurczowego).  Severity – to dolegliwość badanej choroby: jeśli =0 to pacjent zdrowy, jeśli severity >0, to jest to ilościowa miara dokuczliwości choroby.

Interesuje nas, które z mutacji i które z mierzonych parametrów mogą mieć wpływ na badaną chorobę. W przypadku mutacji wpływ może być jakościowy (posiadanie mutacji zwiększa zapadalność na chorobę) albo ilościowy (jeśli pacjent jest chory i posiada mutację, to dokuczliwość choroby jest inna niż w przypadku braku mutacji). W przypadku parametrów ilościowych podobnie. Np. pacjenci o wyższym wzroście mogą częściej zapadać na chorobę albo mieć inną jej dolegliwość niż pacjenci o niższym wzroście.

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)? Sprawdź które zmienne mogą mieć związek z występowaniem choroby. Spróbuj określić model liniowy dokuczliwości choroby oparty o dane pacjentów nie zawierający zmiennych nie wpływających na wynik.

Każdy wybiera sobie jeden zbiór danych i zapisuje swój wybór w Doodle. Analizujemy dane najlepiej jak umiemy i odsyłamy skrypt w R użyty do analizy i krótki raport z opisem analizy i  wyciągniętymi wnioskami. Odpowiedzi wysyłamy na adres e-mail wykładowcy z dopiskiem [SAD-1-2015] w temacie.

Termin: do 30. kwietnia 2015.

 

Zajęcia nr 5. Regresja do wielu zmiennych i modele liniowe

Slajdy są tutaj

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 nr 4 – korelacja i regresja

Dziś głównie o korelacji i regresji. Slajdy do wykładu są tutaj. Przyda nam się pakiet car (companion to applied regression). Instalujemy go przez install.packages(“car”)

Zadanie 1.

Wygeneruj próbki losowe, zmiennych x i y niezależnych, normalnych. Wyświetl je przy pomocy funkcji plot lub scatterplot (z pakietu car) 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)? (Aby oszacować zachowanie rozkładu trzeba spróbować więcej niż raz dla zadanych parametrów).

Zadanie 2. Spróbuj zrobić to zamo dla zmiennych zależnych (np. x=rnorm(1000), y=x+rnorm(1000,0,0.3). Zobacz jak wyglądają wykresy (scatterplot i plot) dla takich zmiennych. Można popróbować też z funkcją hexbin z pakietu hexbin do rysowania map gęstości

Zadanie 3.

Wygeneruj próbę, gdzie zmienne x i y są istotnie zależ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 4.

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 5.

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 3 – więcej testów

Slajdy do wykładu są tutaj

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. 10 100 10000) wyników strzałów z celownikiem dobrym (srednia 0) i tyle samo z celownikiem przesunietym w górę (średnia 1,2 lub 10) lub przesuniętym w dół (średnia odp. -1 -2 -10). Sprawdź testem t-Studenta (t.test), czy można rozpoznać te dwie sytuacje. Jak zależy to od liczby strzałów?

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 i wariancji=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). Może przydać się funkcja sample, i definiowanie zakresów, np. 1:6

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 wygeneruj próby  (np. po 100 dzieci z każdej grupy i określ statystyczną istotność zależnośći wagi od wzrostu testem f z ANOVA (funkcja aov())

Zajęcia 2 – Testowanie wielu hipotez

Zajmiemy się dziś testowaniem wielu hipotez. Slajdy są tu

Najpierw przypomnimy sobie rozkłady dwumianowy i hipergeometryczny

Zadanie 1.

Spróbuj wygenerować po 10, 100 lub 1000 różnych wyników eksperymentu dla schematów testu Fisher’a (próbowanie herbaty razy 20) 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.

Używając funkcji hist, spróbuj wyrysować histogramy p-wartości dla różnej “rozdzielczości” i oszacuj FDR.

Zadanie 3.

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, hist

SAD 2014/15 Zajęcia 1

Slajdy do wykładu są tu

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()

 

 

Zaliczenie w terminie poprawkowym

Część z Państwa ma już wpisane oceny. Jeśli ktoś powinien mieć ocenę w protokole, ale jej nie ma, to proszę o kontakt mailowy (były przypadki, że Państwa e-mail nie miał oznaczenia (SAD-1 lub SAD-2) i zgubił się gdzieś w mojej skrzynce.

Jeśli ktoś potrzebuje jeszcze coś skonsultować, to zapraszam w czwartek między 12ta a 14ta.

Co do zaliczenia w terminie poprawkowym – będzie egzamin pisemny, podobny do tego z I terminu, za 20 punktów. Do tego doliczymy punkty z programów zaliczeniowych podzielone przez 2. Projekty zaliczeniowe można nadsyłać do końca sierpnia.