242 gRrrntikn
Funkcje rozrzutu są bardzo przydatne przy pierwszym kontakcie z danymi. Uruchomione dla wszystkicli zmiennych, pozwalają szybko zauważyć, czy w rozpatrywanym zbiorze danych zachodzą się jakieś ciekawe relacje. Poniższy kod generuje ! przykłady z rysunków 4.12, 4.13 i 4.14.
kolory = c(‘'grey“, "black") Eunclass(plac)]
bg
K wykresy rozrzutu dla dwóch podpopulacji kobiet i mężczyzn pairsCwiek+cisnienie.skurczowe+cisnienie.rozkurczowe, data“dane, , kolory, pch-21, cex»ł.5) scatterplot.matrix(dane[,c(l,6,7)], pch*19) gpaira(dane C,c(2,3,6,7)})
Funkcja coplotO rysuje warunkowe wykresy rozrzutu, czyli wykresy rozrzutu dla różnych poziomów zmiennej wyliczeniowej lub też dla różnych przedziałów zmienności określonej zmiennej ciągłej (patrz rysunek 4.15).
Parametry rows i coliimns określają na ile przedziałów podzielone mają być zmienne grupujące (o ile są one w skali ciągłej, zmienne wyliczeniowe mają automatycznie wyznaczaną liczbę podziałów). Manipulując parametrem overlap kontrolujemy stopień zachodzenia na siebie kolejnych przedziałów dla zmiennej ciągłej możemy zażyczyć, sobie przedziałów w pełni na siebie zachodzących (overlap=i) łub rozłącznych (overlap=0). W poniższym przykładzie do wykresu rozrzutu dorysowana jest krzywa lokalnej średniej. Można też wskazać inne rodzaje wykresów, które będą rysowane w poszczególnych panelach (argument panel).
S# pomiary ’ ciśnienia w różnych kategoriach wieku i płci pacjentów C „ : coplot(ciśnienie.skurczowe~cisnienie.rozkurczowe 1plec+wiek, number=4, panel « function(x, y, . ..) panel.BBooth(x, y, span » .3, ...))
Funkcja plotcorrO rysuje graficzną reprezentację macierzy korelacji pomiędzy zmiennymi (patrz rysunek 4.24 i 4.25). Korelacje przedstawiane są jako elipsy. Im te elipsy są bardziej różne od okręgu tym korelacja jest silniejsza. Ten sposób wizualizacji dla wielu zmiennych jest dla normalnego człowieka dużo bardziej czytelny niż' macierz korelacji (macierz liczb). Zmieniając argument numbers na TRUE powodujemy, że na wykresie jest przedstawiana pierwsza cyfra dziesiętna wartości korelacji. Manipulując innymi argumentami możemy zmieniać kolory, kształty i inne parametry rysowanych elips. Poniższy kod generuje przykłady z rysunków 4.24 i 4.25.
# wyznaczamy macierz korelacji
kor ■ cor(dane[,c(l,6,7,8,9)3)
z funkcji plotcdrrO
tt wizualizujemy tę macierz korzystając
plotCorr(kor, numbers”T)
plotcorr (kor, col*=rgb ((kor+1) /2,0,0))
Funkcje graficzne
243
;
i
Funkcja data.ellipseO estymuje macierz kowariancji dla pary zmiennych, a na-stępnie na bazie tej macierzy rysuje elipsy odpowiadające uogólnionym kwantylom dwuwymiarowego rozkładu normalnego odpowiadającego zadanym zmiennym (patrz rysunek 4.22 i 4.23). Tą funkcją można też obrazować wartość współczynnika korelacji pomiędzy wybraną parą zmiennych.
Poniższy kod generuje przykłady z rysunków 4.22 i 4.23.
H zależność pomiędzy danymi obrazujemy za pomocą elips odpowiadających poziomicom gęstości dwuwymiarowego rozkładu normalnego data.ellipse(ciśnienie.skurczowe, ciśnienie.rozkurczowe) data.ellipse(cisnienle.skurczowe, ciśnienie.rozkurczowe, levels*(l:10)/ 10, col=c("red",rep("black",204)), pch-19)
Funkcja distplot () przedstawia wykresy diagnostyczne dla dopasowań danej zmiennej do wybranego rozkładu dyskretnego (patrz rysunek 4.41 i 4.42). Na wykresie prezentowana jest obserwowana częstość występowali na tle oczekiwanej wynikającej z dopasowania do danego rozkładu. Jeżeli te częstości układają się na linii prostej, to dopasowanie jest dobre. Rozkłady dla których możemy rysować wykresy diagnostyczne to: rozkład Poissona, rozkład dwumianowy i rozkład ujemny dwumianowy. Poniższy kod generuje przykłady z rysunków 4.41 i 4.42. f
U funkcją distplot O możemy sprawdzać dopasowanie do rozkładów •' dyskretnych, zmienna powinna mieć charakter zliczeniowy distplot(pobytow.w.szpitalu)
distplot(pobytow.w.szpitalu, type“"biftomial", size=6)
Funkcja fourfoldO przedstawia graficznie tabele wielodzielcze o wymiarach 2x2 (patrz rysunek 4.31 i 4.32). Tabelę wielodzielczą możemy wyznaczyć i narysować dla całej populacji lub dla różnych podpopulacji. Na wykresach kończyny możemy wizualizować zależności pomiędzy dwoma zmiennymi dyskretnymi. Uzupełnieniem tabeli wielodzielczej i wykresu kończyny będzie test x2 lub dokładny test Fisłiera weryfikujący hipotezę o zależności pomiędzy danymi zmiennymi.
Poniższy kod generuje przykłady z rysunków 4.31 i 4.32.
tt wykresy kończyny fourfold(table(plec, praca)) fourfold(table(plec, praca, wykształcenie))