274844697

274844697



12 2. Podstawy R i ćwiczenia komputerowe

>    curve(pnorm(x),from=xmin,to=xmax,col="blue",add=TRUE)

Test Kołmogorowa-Smirnowa oblicza maksymalną odległość D = J2X \Fn(x) — -F*(a;)|, gdzie Fn jest dystrybuantą empiryczną iF = $.

>    ks.test(X,pnorm,exact=TRUE)

Przypomnijmy sobie z wykładu ze statystyki, co znaczy podana przez test p-wartość. Jakiego wyniku „spodziewaliśmy się”?

Jest teraz dobra okazja, aby pokazać jak się symulacyjnie bada rozkład zmiennej losowej. Przypuśćmy, że interesuje nas rozkład prawdopodobieństwa p-wartości w przeprowadzonym powyżej doświadczeniu (polegającym na wylosowaniu próbki X i przeprowadzeniu testu KS). Tak naprawdę powinniśmy znać odpowiedź bez żadnych doświadczeń, ale możemy udawać niewiedzę i symulować.

Przykład 2.2 (Powtarzanie doświadczenia symulacyjnego). Symulacje polegają na powtórzeniu całego doświadczenia wiele razy, powiedzmy m = 10000 razy, zanotowaniu wyników i uznaniu powstałego rozkładu empirycznego za przybliżenie badanego rozkładu prawdopodobieństwa. Bardzo ważne jest zrozumienie różnej roli jaką pełni tu n (rozmiar próbki w pojedynczym doświadczeniu, a więc „parametr badanego zjawiska”) i m (liczba powtórzeń, która powinna być możliwie największa aby zwiększyć dokładność badania symulacyjnego). Następujący progarmik podkreśla logiczną konstrukcję powtarzanego doświadczenia:

>    m <- 10000

>    n <- 100

>

>    # Przygotowujemy wektory w którym zapiszemy wyniki:

>    D <- c()

>    P <- c ()

>

>    for (i in l:m)

>    {

>    X <- rnorm(n)

>    Test <- ks.test(X,pnorm,exact=TRUE)

>    D[i] <- Test$statistic

>    PCi] <- Test$p.value

>    } # koniec pętli for

>

>    # Analizujemy wyniki:

>    hist(D, prob=TRUE)

>    hist(P, prob=TRUE)

Co prawda powyższy programik spełnia swoją rolę, jednak struktura pakiektu R jest dostosowana do innego stylu pisania programów. Zamiast pętli for zalecane jest używanie funkcji które powtarzają pewne operacje i posługiwanie się, kiedykolwiek to możliwe, całymi wektorami a nie pojedynczymi komponentami. Poniższy fragment kodu zastępuje pętlę for

>    DiP <- replicate(m, ks.test(rnorm(n),pnorm,exact=TRUE)[1:2]))

>

>    DiP <- t(DiP) # transpozycja macierzy ułatwia oglądanie wyników

>    D <- as.numeric((DiP) [,1]) # pierwsza kolumna macierzy

>    P <- as.numeric(CDiP)[,2]) # druga kolumna macierzy



Wyszukiwarka

Podobne podstrony:
2. Podstawy R i ćwiczenia komputerowe Oczekuję, że Czytelnik uruchomił pakiet (lub „otoczenie”,
14 2. Podstawy R i ćwiczenia komputerowe Chciałbym podkreślić raz jeszcze różnicę pomiędzy metodolog
TEMAT I CEL ĆWICZENIA: Komputerowa symulacja hydratacji cementu. DATA: 5.12.2005 PODSTAWY
5. ĆWICZENIA5.1.    Podstawy sieci komputerowych5.1.1.
img163 (12) PODSTAWY NEUROREGULACJI KRĄŻENIA KRWI Edyta Sienkiewicz—Latka CZĘŚĆ TEORETYCZNA ĆWICZENI
Ćwiczenia laboratoryjne Podstawy grafiki komputerowej. Zarządzanie dokumentacja projektową w środowi
skanuj0009 12 Dziewiąte ćwiczenie - poprawiające ukrwienie głowy - Należy spleść ręce na karku, unie
img006 12 PODSTAWY TECHNIK MIKROSKOPOWYCH 12 PODSTAWY TECHNIK MIKROSKOPOWYCH Ryc. 1.3. Kąt a —jeden
img0 (12) Podstawowe pojęcia i historia PostgreSOL Tomasz Borzyszkowski
img4 (12) Podstawowe funkcje DBMS Tworzenie bazy danych: utworzenie niezbędnych niskopoziomowych str
IMG 1211054613 KURS PODSTAWOWY 1 Ćwiczenie 6 BŁONA KOMÓRKOWA, GLIKOKALIKS, ŚCIANA KOMÓRKOWA I POŁĄC
IMG!12 1. Cel ćwiczenia:Zapoznanie się ze sposobem pomiaru przesunięcia fazowego metodą figur Lissaj
12 Nadal klepię w komputer teksty i skanuję zdjęcia z różnych kronik hufca płockiego, które pozostaw

więcej podobnych podstron