• Nie Znaleziono Wyników

Statystyczne metody analizy danych przy użyciu środowiska R

N/A
N/A
Protected

Academic year: 2021

Share "Statystyczne metody analizy danych przy użyciu środowiska R"

Copied!
47
0
0

Pełen tekst

(1)

Statystyczne metody analizy danych przy użyciu środowiska R

Agnieszka Nowak - Brzezińska

Instytut Informatyki, Uniwersytet Śląski

Wybrane zagadnienia

(2)

Plan wystąpienia

1. Wprowadzenie.

2. Środowisko R.

3. Wybrane metody analizy danych:

ˆ Prezentacja danych.

ˆ Regresja liniowa, predykcja danych.

ˆ Obserwacje odstające a obserwacje wpływowe.

4. Podsumowanie.

(3)

Środowisko R

ˆ Jest to bardzo elastyczne (darmowe) środowisko analityczne o bogatej funkcjonalności, które jest stosowane w wielu badawczych i praktycznych pracach dotyczących analizy danych i odkrywania wiedzy.

ˆ R jako język programowania dostarcza wbudowanych operacji

ułatwiających przetwarzanie tabelarycznych zbiorów danych, mechanizmów graficznego opisu danych, bogatych bibliotek funkcji analitycznych, obejmujących szeroki zakres metod statystycznych i metod odkrywania wiedzy oraz - co niezwykle ważne - interaktywny interpreter poleceń i (dla niektórych platform) graficzny interfejs użytkownika.

ˆ Wszystkie niezbędne informacje o języku R znajdziemy na stronach CRAN (The Comprehensive R Archive Network), gdzie dostępne są pakiety źródłowe, dokumentacja, oraz obszerne zasoby bibliotek.

(4)

Rysunek:Okno główne środowiska R

(5)

Pomoc w nauce R

ˆ Godnym polecenia materiałem umożliwiającym przyswojenie

podstawowych zagadnień jest darmowy kurs pt. ”Wprowadzenie do języka R” dostępny na stronie

http://cran.r-project.org/doc/contrib/Komsta-Wprowadzenie.pdfa także źródło anglojęzyczne pt. ”An Introduction to R” do ściągnięcia ze stronyhttp://cran.r-project.org/doc/manuals/R-intro.html.

ˆ The R Language Definition - źródło:

http://cran.r-project.org/doc/manuals/R-lang.html

ˆ The R Language – A Short Companion - źródło:

http://cran.r-project.org/doc/contrib/R_language.pdf

ˆ R Reference Card - źródło:

http://cran.r-project.org/doc/contrib/refcard.pdf

(6)

Pomoc środowiska R

(7)

Statystyka opisowa za pomocą R-a

Wyznaczanie miar rozkładu

Bardzo prostą metodą w zakresie statystyki opisowej jest tworzenie opisu zbioru danych za pomocą tzw. emphmiar rozkładu cechy. Miary rozkładu można podzielić na kilka podstawowych kategorii:

ˆ miary położenia, np. kwantyl, miary tendencji centralnej (np. średnia arytmetyczna, średnia geometryczna, średnia harmoniczna, średnia kwadratowa, mediana, moda),

ˆ miary zróżnicowania, np. odchylenie standardowe, wariancja, rozstęp, rozstęp ćwiartkowy, średnie odchylenie bezwzględne, odchylenie ćwiartkowe, współczynnik zmienności,

ˆ miary asymetrii, np. współczynnik skośności, współczynnik asymetrii, trzeci moment centralny,

ˆ miary koncentracji, np. współczynnik Giniego, miara kurtozy [2].

(8)

Funkcja summary:

Pakiet Hmisc i komenda library(Hmisc)

(9)

Funkcja describe z pakietu psych

otrzymujemy: nazwę zmiennej (kolumny, cechy), jej numer w całym zbiorze danych (var), liczba wartości w zbiorze (n) a także statystyki typu: średnia (mean), odchylenie standardowe (sd), mediana (median), elementy minimalny (min) i maksymalny (max), skośność (skew) oraz kurtoza (kurtosis).

(10)

Graficzna prezentacja wyników

ˆ histogramy i wykresy częstości (ang.density plot)- przedstawiające rozkład empiryczny cechy,

ˆ wykresy rozrzutu (ang.scatterplots) - pozwalające wykrywać pewne zależności (i ich typ) między wartościami ciągłymi obserwacji w pewnej mierzonej skali. Każdy punkt wykresu reprezentuje pojedynczą obserwację,

ˆ wykresy pudełkowe (ang.boxplot) - prezentowane za pomocą pudełka, którego lewy bok jest wyznaczony przez pierwszy kwartyl, zaś prawy bok przez trzeci kwartyl. Szerokość pudełka odpowiada wartości rozstępu ćwiartkowego. Wewnątrz pudełka znajduje się pionowa linia, określająca wartość mediany. Rysunek uzupełniamy po prawej i lewej stronie odcinkami. Lewy koniec lewego odcinka wyznacza najmniejszą wartość w zbiorze, natomiast prawy koniec prawego odcinka to wartość największa.

(11)

Histogramy

> dane<-c(3,4,5,6,7,7,7,8,8,8,9)

> hist(dane,col="red",xlab="wartości",main="Histogram")

(12)

Wykresy pudełkowe

Wykresy pudełkowe spotykane są najczęściej w pakietach komputerowych wspomagających proces analizy i interpretacji danych statystycznych.

Oczywiście:

ˆ Lower whisker- wartość najmniejsza dla danej zmiennej.

ˆ Lower quartile- punkt dokładnie na 25% zbioru obserwacji.

ˆ Median -punkt rozgraniczający dokładnie 50% obserwacji.

ˆ Upper quartile- Punkt, przed którym jest 75% obserwacji.

ˆ Upper whisker- najwyższa wartość w zbiorze.

ˆ Mean- wartość średnia w zbiorze obserwacji.

(13)

Wykres pudełkowy

boxplot(dane,col="red",xlab="wartości",main="Wykrespudełkowy")

(14)

Wykresy w R

Ogromną zaletą środowiska R jest jego system graficzny i możliwości łatwej wizualizacji danych. Bardzo skrótowo (ale jednocześnie wystarczająco)

generowanie wykresów zostało przedstawione w kursie dostępnym pod adresem:

http://www.oginet.pl/~rasp/r/wykresy.html. Generalizując powiemy, że należy wyróżnić dwa rodzaje funkcji graficznych w R:

ˆ wyskopoziomowe funkcje rysują kompletne wykresy ( i usuwające poprzednie),

ˆ niskopoziomowe funkcje dodające do wykresów nowe elementy typu legenda, punkty, linie, tekst.

(15)

Wykres rozrzutu - przykład 1

(16)

Wykres rozrzutu - przykład 2

(17)

Wykres mieszany - przykład 3

(18)

http://www.statmethods.net/advgraphs/layout.html

(19)

Regresja - metoda najmniejszych kwadratów

(20)

Model regresji liniowej

(21)

Obserwacje odstające

Obserwacja odstająca (ang. outlier )

jest obserwacją, która nie spełnia równości regresji czyli nie należy do modelu prostej regresji. Obserwacje odstające mogą znacząco wpłwać na postać prostej regresji:b0+ b1x dla której wartość sumy:Pn

i =1(yi− ˆyi)2a więc i sumy Pn

i =1(yi− (b0+ b1xi))2ma być możliwie najmniejsza.

Jeśli analizujemy tylko pojedyncze zmienne objaśniające, to identyfikacja obserwacji odstających jest dość prosta. Wystarczy generować wykresy rozrzutu bądź histogramy. Jeśli zaś chcemy szukać obserwacji odstających globalnie (nie dla pojedynczej zmiennej objaśniającej ale dla wielu) wówczas możemy analizować rezydua lub rezydua studentyzowane i wśród nich szukać wartości odstających.

(22)

Wyznaczenie obserwacji odstających

(23)

Wyznaczenie obserwacji odstających

1. Mając wektor wartości resztowych(rezyduów)e = (e1, e2, . . . , en),gdzie wartość resztowaei = yi− ˆyi (ei = yi− (b0xi+ b1))powiemy, że błąd standardowy rezyduumei jest równy:

SEei = S ∗

r

1 − (1

n+ (xi− ¯x )2

Pn

i =1(xi− ¯x )2).

Wtedy studentyzowana wartość resztowa będzie odpowiadać wartości:

ri= ei

SEei

.

2. Sporządzając wykres wartości studentyzowanych rezyduówri względem ich indeksu będziemy potrafili rozpoznawać te duże wartości, które przypuszczalnie będą odstającymi.

Podsumowując powiemy, że nowa obserwacja będzie punktem odstającym jeśli będzie się cechować dużą wartością standaryzowanej reszty. W praktyce, obserwacje odstające to takie, których wartość bezwzględnych standaryzowanych reszt przekracza 2.

(24)

Wyznaczenie obserwacji odstających w R

W środowisku R wykrycie obserwacji odstających możliwe jest na kilka sposobów. Jednym z nich jest użycie funkcjirstudent. Jak widać na poniższym kodzie, w analizowanym przez nas zbiorze występuje obserwacja odstająca. Jest to obserwacja o numerze 8 i wartości −2.176429.

(25)

Wyznaczenie obserwacji odstających w R

Alternatywnie, możemy użyć funkcjioutlier.testz biblioteki car .

(26)

Obserwacje wpływowe

Obserwacja jest wpływowa (ang. influential )

jeśli jej obecność wpływa na prostą regresji, w taki sposób, że zmienia się współczynnik kierunkowy tej prostej. Inaczej powiemy, że jeśli obserwacja jest wpływowa to inaczej wygląda prosta regresji w zależności od tego czy ta obserwacja została ujęta w zbiorze, czy też nie (gdyż została usunięta).

W praktyce, jeśli obserwowana wartość leży w Q1(czyli ma wartość mniejszą niż 25 centyl), to mówimy, że ma ona mały wpływ na regresję. Obserwacje leżące między Q1a Q3kwartylem nazywamy wpływowymi. Wykrycie obserwacji wpływowych umożliwia pomiar odległości Cooka z tzw. modyfikowanymi rezyduami. Usuwamy obserwację potencjalnie wpływową i obliczamy różnicę.

Obserwacja jest wpływowa jeśli ta różnica będzie wysoka. Odległość Cooka mierzy poziom wpływu obserwacji i jest obliczana jako:

Di= Pn

j =1( ˆyj− ˆyj (i ))2

pS2 = e

2 i pS2

hi

(1−hi)2,gdzieyˆjjest wartością przewidywaną dlaj-tej obserwacji obliczoną w modelu z usuniętą obserwacjąi-tą zaśyj (i )ˆ jest wartością przewidywaną dlaj-tej obserwacji w modelu, w którym nie usunięto i -tej obserwacji (potencjalnie wpływowej).

(27)

Wyznaczenie obserwacji wpływowych w R

Teraz jeśli chcemy poznać obserwacje wpływowe możemy użyć komendy:

której efektem będzie wykres:

(28)

Do wykrycia obserwacji wpływowych możemy także użyć funkcji>

influence.measures(lm(b ∼ a)), której efekt będzie następujący:

Ostatnia kolumna wskazuje na obserwacje wpływowe zaznaczając przy nich symbol ∗. Są to obserwacje 1 i 9.

(29)

Zbiór Cereals.data

(30)

Zbiór Cereals.data

ˆ źródło: http://lib.stat.cmu.edu/DASL/Datafiles/Cereals.html

ˆ Zbiór zawiera dane 77 rodzajów płatków śniadaniowych,które opisane są 14 atrybutami warunkowymi i jednym atrybutem decyzyjnym rating mówiącym o wartości odżywczej płatków w oparciu o informacje typu:

calories, sugars, fiber , sodium, vitamins czy weight (ora zinne).

(31)

Zbiór Cereals.data

(32)

Zbiór Cereals.data

(33)

Wyznaczenie obserwacji odstających w modelu z wieloma zmiennymi objaśniającymi

Obserwacje odstające będziemy wykrywać przy użyciu znanego już pakietucar i funkcjioutlier.testw ramach tego pakietu.

Wykryliśmy jedną obserwację odstającą (płatki o nazwie Golden Crisp).

(34)
(35)

Obserwacje wpływowe w zbiorze Cereals

Funkcja:influence.measures

Za wpływowe uznamy 6 obserwacji:

100% Bran,All-Bran, All-Bran with Extra Fiber czy Frosted Mini-Wheats, Golden Crisp (które zresztą uznaliśmy za obserwację odstającą, outlier ) oraz

Post Nat. Raisin Bran.

(36)

Bardzo ważne dla wykrycia obserwacji odstających są tzw. studentyzowane reszty. Wykres dla nich możemy wykonac wywołując komendę:

> qq.plot(model, main="QQ Plot")

Efektem będzie wykres z rozkładem obserwacji między I i III kwartylem, stąd nazwa wykresu ”międzykwartylny”

(37)

Regresja liniowa dla zbioru Cereals

(38)

Predykcja dla zbioru Cereals

Równanie regresji:

gdy zmienną objaśnianą będzie zmienna rating (wartość odżywcza płatków) zaś objaśniającą sugars (poziom cukrów), będzie następującej postaci:

rating = -2.4 * sugars + 59.3

Gdy poziom cukrów wynosi np 1 to wartość odżywcza płatków będzie wynosić 56.9 zaś gdy poziom cukrów będzie wynosił np 10 wówczas wartość odżywcza zmaleje do wartości 35.3.

(39)

Inne metody analizy danych

ˆ analizy dyskryminacyjna:

ˆ library(MASS)i funkcjalda()

ˆ analiza skupień:

ˆ pam(), kmeans(), pvclust(), hclust().

ˆ drzewa klasyfikacyjne:

ˆ rpart(), printcp()

ˆ analiza składowych głównych:

ˆ princomp(), factanal()

(40)

Analiza dyskryminacyjna

(41)

Analiza skupień - statystyki danych

(42)

Analiza skupień - klasyczny algorytm k-średnich

(43)

Drzewa klasyfikacyjne

(44)

Analiza składowych głównych

(45)

Analiza składowych głównych

(46)

Podsumowanie

ˆ R jest wykorzystywany w badaniach naukowych i dydaktyce na najlepszych uczelniach na świecie, w dziedzinach biologii, socjologii, psychologii, ekonomii.

ˆ R to środowisko do obliczeń statystycznych, a jednocześnie język programowania.

ˆ R może działać na systemach Windows, Linux i MacOS.

(47)

Bibliografia

Smith L.I.,A tutorial on Principal Components Analysis, http://kybele.psych.cornell.edu/~edelman/

Psych-465-Spring-2003/PCA-tutorial.pdf, 2002.

Redakcja naukowa: Walesiak M. and Gatnar E., Statystyczna analiza danych z wykorzystaniem programu R, PWN, 2009, Warszawa, Polska Larose Daniel T., Metody i modele eksploracji danych. PWN, Warszawa, Polska, 2008.

Ćwik J. and Mielniczuk J., Statystyczne systemy uczące się. Ćwiczenia w oparciu o pakiet R. Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa, Polska, 2009.

Koronacki J. and Mielniczuk J., Statystyka dla studentów kierunków technicznych i przyrodniczych. Wydawnictwa Naukowo-Techniczne, Warszawa, Polska, 2006.

Koronacki J. and Ćwik J., Statystyczne systemy uczące się. EXIT.

Warszawa, Polska, 2008.

Cytaty

Powiązane dokumenty

Grupowanie (ang. Podstawowym założeniem doty- czącym wynikowego podziału jest homogeniczność obiektów wchodzących w skład jednej grupy oraz heterogeniczność samych grup –

• Jeśli wykres szeregu rozdzielczego cechy populacji jest symetryczny względem pewnej prostej prostopadłej do osi odciętych (prostej o równaniu postaci x = a),

• dla szeregu szczegółowego i rozdzielczego punktowego W szeregach szczegółowych i rozdzielczych punktowych dominantą jest wartość cechy, której

SMAD – Statystyczne metody analizy danych.. Agnieszka Nowak

Następnie stosując znane Ci z zajęć i wykładu funkcje biblioteki car wskaż identyfikatory tych obiektów które są obserwacjami wpływowymi i tych które są

[r]

polityka ochrony środowiska 20 ćw OiIŚP II 1,2 ocena zasobów przyrodniczych 15 ćw OiIŚP II 1,2 rekultywacja terenów. zdegradowanych 25 lb OiIŚP

[r]