kvantilna regresija u r-u

18
Univerzitet „Džemal Bijedić“ u Mostaru Fakultet informacijskih tehnologija Postdiplomski studij Predmet: Data Mining Kvantilna regresija u R-u Seminarski rad Mentor: Kandidati: prof. dr Emir Veledar Đenan Herić Emir Slanjankić Mostar, oktobar 2011.

Upload: emir-slanjankic

Post on 02-Aug-2015

159 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Kvantilna regresija u R-u

Univerzitet „Džemal Bijedić“ u Mostaru

Fakultet informacijskih tehnologija

Postdiplomski studij

Predmet: Data Mining

Kvantilna regresija u R-u Seminarski rad

Mentor: Kandidati:

prof. dr Emir Veledar Đenan Herić

Emir Slanjankić

Mostar, oktobar 2011.

Page 2: Kvantilna regresija u R-u

1

Sadržaj 1. UVOD ................................................................................................................................................... 2

2. OSNOVE KVANTILNE REGRESIJE .......................................................................................................... 2

2.1. Set podataka ................................................................................................................................. 3

2.2. R softver ....................................................................................................................................... 3

3. QUANTREG PAKET ............................................................................................................................... 6

3.1. Opis važnijih funkcija u QUANTREG paketu ................................................................................. 6

3.1.1. RQ .......................................................................................................................................... 6

3.1.2. NLRQ ...................................................................................................................................... 6

3.1.3. ANOVA.RQ ............................................................................................................................. 7

3.1.4. PREDICT.RQ ........................................................................................................................... 7

3.1.5. SUMMARY.RQ ....................................................................................................................... 7

3.1.6. LPRQ ...................................................................................................................................... 8

3.1.7. PLOT.RQ ................................................................................................................................. 8

4. PRIMJENA FUNKCIJA NA ODABRANOM SETU PODATAKA .................................................................. 9

5. ZAKLJUČAK ......................................................................................................................................... 16

Literatura ............................................................................................................................................... 17

Popis slika Slika 1. Osnovni radni prozor u R-u ......................................................................................................... 3

Slika 2. Lista paketa u R ........................................................................................................................... 4

Slika 3. Uvoz podataka u R ...................................................................................................................... 5

Slika 4. Potrošnja (MPG) u funkciji snage motora (HP) – empirijski podaci ............................................ 5

Slika 5. Sumarni podaci o setu podataka ................................................................................................. 9

Slika 6. Vizuelni prikaz jedne varijable ................................................................................................... 10

Slika 7. Zavisnost mase od potrošnje automobila (empirijski podaci) .................................................. 10

Slika 8. Zavisnost mase automobila od potrošnje goriva – za različite dijelove skupa prediktora ....... 11

Slika 9. Detalji objekta rq ..................................................................................................................... 12

Slika 10. Sumarni podaci za obj ........................................................................................................... 12

Slika 11. Grafički prikaz parametara linearnog modela......................................................................... 13

Slika 12. Pravci kvantilne regresije za različite kvantile ......................................................................... 14

Slika 13. ANOVA analiza za dva objekta tipa rq ................................................................................... 14

Slika 14. Nelinearna kvantilna regresija za različite vrijednosti tau .................................................... 16

Popis tabela Tabela 1. Djelimični prikaz originalnog seta podataka ............................................................................ 3

Page 3: Kvantilna regresija u R-u

2

1. UVOD

Linearna regresija koristi se za ispitivanje uticaja jedne ili više nezavisnih promjenjivih (predictor

variable) na zavisnu promjenjivu (response variable). Za razliku od nje, kvantilna regresija koristi se za

ispitivanje uticaja prediktora na samo jedan dio (podskup) vrijednosti zavisne promjenjive (tj. na

kvantilu zavisnih promjenjivih). Tako se dobija bolji uvid u uticaj nezavisnih promjenjivih na zavisnu

promjenjivu. Rezultati kvantilnog modela upoređuju se s rezultatima linearnog modela da se utvrde

odstupanja između njih. U pravilu, kvantilni model daje bolji uvid u uticaj prediktora na posmatranu

pojavu.

U ovom seminarskom radu biće predstavljene mogućnosti korištenja R softverskog paketa u primjeni

kvantilne regresije u odabranom setu podataka. Rad je organizovan u nekoliko cjelina. U prvom dijelu

rada biće objašnjena kvantilna regresija uopšte, značenje i mogućnosti njene primjene. Zatim će biti

predstavljene osnove sintakse R-a za potrebe rada u tom okruženju. Zatim će biti predstavljene

važnije funkcije paketa QUANTREG, koje omogućuju kreiranje regresionih modela u odabranim

setovima podataka. Opisane funkcije biće na kraju primijenjene nad odabranim setom podataka, uz

grafički prikaz i objašnjenje koraka potrebih za dobijanje rezultata.

Pored nekoliko ključnih funkcija razvijenih za regresiranje, paket QUANTREG sadrži i izvjestan broj

setova podataka i funkcija koji nisu nužni za razumijevanje kvantilne regresije u R-u. Zbog toga će se u

radu obraditi samo najvažnije funkcije i njihovi parametri nužni za razumijevanje materije. Pored

toga, pojedini opcioni parametri funkcija će takođe biti izostavljeni, kako se ne bi previše odstupilo od

teme rada.

2. OSNOVE KVANTILNE REGRESIJE

U statistici, kriva regresije odražava zavisnost jednog skupa varijabli (zavisna promjenjiva) od drugog

(nezavisna promjenjiva, prediktor). Pomenuta zavisnost utvrđuje se najčešće metodom najmanjih

kvadrata, odnosi se na cijeli skup vrijednosti zavisne promjenjive i ne može se utvrditi kako se ona

mijenja ako se posmatra na dijelu skupa vrijednosti zavisne promjenjive (npr. za 10% najvećih

vrijednosti). Regresioni model, dakle, treba da što je moguće bolje predstavi distribuciju zavisne

promjenjive, uz što manja odstupanja. Odstupanja se javljaju između poznatih vrijednosti i vrijednosti

izračunatih korištenjem regresionog modela. Analogno, odstupanja se javljaju i na strani prediktora –

između poznatih vrijednosti prediktora i sredine. Kriva regresije, prema tome, ne daje kompletnu

sliku o distribuciji, jednako kao što sredina skupa ne daje kompletnu sliku o tom skupu.

Da bi se dobila potpunija slika distribucije, može se koristiti kvantilna regresija. Njen zadatak je da u

uređenom skupu utvrdi vezu između dijela skupa prediktora (npr. kvantila, kvartila i sl.) i zavisne

promjenjive, kako bi se utvrdilo da li postoje razlike u obliku i prirodi zavisnosti u odnosu na klasičnu

regresiju. Na taj način se u fokus analize stavljaju specifične vrijednosti – najveće i najmanje, kao i

vrijednosti izvan domena (tzv. outliers). Primjenjiva je i u slučajevima zavisnosti jedne varijable od

nekoliko drugih.

Page 4: Kvantilna regresija u R-u

3

2.1. Set podataka U radu će biti korišten set podataka preuzet sa http://www.mathcs.org/statistics/datasets1 . Radi se

o dokumentu u XLS2 formatu koji sadrži podatke o osnovim parametrima za 396 automobila, kako je

to prikazano u Tabeli 1.

Tabela 1. Djelimični prikaz originalnog seta podataka

Tabela sadrži podatke o potrošnji automobila (izraženo u miljama po galonu), zapremini motora (u

kubnim inčima), snazi motora u konjskim snagama, masi automobila u funtama, vremenu potrebnom

za ubrzanje od 0 do 60 milja na sat, godini proizvodnje, zemlji porijekla i broju cilindara motora.

Za prenos seta u R potrebno je spremiti originalne podatke u CSV3 dokument, pošto je lakše u R

uvesti podatke spremljene u tom formatu. Nakon što se set podataka uveze u R, nad podacima će biti

primijenjene funkcije i metode za linearno i nelinearno regresiranje, te alati za grafičku prezentaciju

rezultata u R softveru.

2.2. R softver4 R softver je jedan od popularnijih alata za statističku analizu, modeliranje i grafički prikaz dobijenih

rezultata. Nakon instaliranja i pokretanja korisnik dobija jednostavan konzolni prozor za unošenje

komandi. Komandna linija počinje znakom „>„, a znak „+“ označava nedovršenu (nepotpunu)

komandu (Slika 1).

Slika 1. Osnovni radni prozor u R-u

1 Portal namijenjen istraživanjima na području matematike, statistike, programiranja i robotike, autor Bert G.

Wachsmuth. 2 Microsoft Excel format dokumenta

3 CSV, Comma Separated Values, format dokumenta u kojem su vrijednosti odvojene zarezom

4 U radu je korištena verzija 2.12.1 od 16.12.2010.

Page 5: Kvantilna regresija u R-u

4

Softver je organizovan modularno – na osnovnu programsku strukturu softvera dodaju se tematski

paketi (packages) koji proširuju i obogaćuju mogućnosti alata. Učitavanjem pojedinog paketa moguće

je korištenje funkcija tog paketa (Slika 2).

Slika 2. Lista paketa u R

U većini slučajeva poziv naredbe rezultira objektom određenog tipa. Objekt dobijen primjenom jedne

naredbe može se koristiti kao argument za drugu naredbu. Na primjer, pozivom naredbe rq(...)

sa odgovarajućim parametrima dobija se objekt tipa .rq; nakon što je objekt kreiran, može se

pozvati naredba summary(...), sa nazivom objekta kao argumentom za potrebe dobijanja

sumarnih podataka o objektu.

Od osnovnih mogućnosti R softvera biće predstavljene samo one koje će biti primijenjene na setu

podataka, radi prikaza mogućnosti alata u kontekstu kvantilne regresije. Konkretno, set podataka koji

će biti korišten u radu izvorno je spremljen u CSV formatu i potrebno ga je uvesti u R. To se postiže

naredbom:

> automobili <- read.table("d:/cars.csv", sep = ";", header = TRUE)

Naredba kreira objekt automobili na osnovu podataka u fajlu D:/cars.csv, u kojem su

kolone razdvojene separatorom ; i imaju zaglavlje (MPG, HP; Slika 3).

Za prikaz uvezenih podataka dovoljno je u komandnoj liniji navesti naziv objekta koji sadrži podatke:

> automobili

Page 6: Kvantilna regresija u R-u

5

Slika 3. Uvoz podataka u R

Za prikaz pojedinih kolona (varijabli) u uvezenom setu podataka treba navesti naziv seta i naziv

kolone, odvojeno znakom dolara:

> automobili$MPG

što će prikazati kolonu sa zaglavljem MPG.

Sumarni podaci o setu podataka dobijaju se pozivom funkcije summary():

Za osnovni grafički prikaz opservacija može se koristiti naredba plot, kao na primjer:

plot(automobili$HP, automobili$MPG, xlim=c(45,231), ylim=c(8,50))

U naredbi su vrijednosti nezavisne promjenjive x (HP) ograničene u rangu (45,231),a zavisne

promjenjive y (MPG) u rangu (8,50).

Slika 4. Potrošnja (MPG) u funkciji snage motora (HP) – empirijski podaci

Za učitavanje pojedinih paketa koristi se naredba:

>library (quantreg)

Ovim se učitava biblioteka (paket) pod nazivom QUANTREG. Nakon toga moguće je u daljem radu

koristiti naredbe iz tog paketa.

Page 7: Kvantilna regresija u R-u

6

3. QUANTREG PAKET Paket quantreg je dodatak R softveru i predstavlja skup funkcija i alata koje se koriste za primjenu

kvantilne regresije u analizi podataka. Pojedine generičke funkcije (summary, plot) su proširene i

prilagođene za potrebe regresiranja. Osim funkcija, paket sadrži i setove podataka pogodne za

navedenu analizu.

Paket se može besplatno preuzeti sa zvaničnog sajta R projekta (cran.r-project.org) i naknadno

instalirati u R softveru. Prije korištenja paketa treba ga učitati pomoću naredbe library().

3.1. Opis važnijih funkcija u QUANTREG paketu

3.1.1. RQ Dvije funkcije koje se koriste za kvantilne regresije su rq (za linearne regresione modele) i nlrq (za

nelinearne modele). Definicija funkcije rq izgleda ovako:

rq(formula,tau=.5,data,subset,na.action,method="br“, ...)

gdje su:

formula formula kojom se predstavlja veza između varijabli (zavisne od nezavisne)

tau kvantila po kojoj se vrši regresiranje; prima vrijednosti u rasponu (0,1)

data naziv korištenog seta podataka

subset podskup vrijednosti nezavisne promjenjive, za preciznije regresiranje (opciono)

na.action funkcija za filtriranje opservacija s nepostojećim vrijednostima u setu podataka; ako u

setu postoje „praznine“, greške u dobijanju rezultata mogu se izbjeći pozivom

na.action=omit, što isključuje opservacije s nepostojećim vrijednostima

method metoda (algoritam) korištena u kalkulisanju regresije; u upotrebi su br za Barrodale-

Robertov algoritam (za manje setove, do nekoliko hiljada opservacija), fn za Frisch-

Newtonov algoritam (za velike setove) i pfn za vrlo velike setove podataka.

... ostali opcioni argumenti

Primjenom ove funkcije dobija se matematički model koji aproksimira podatke. Model je obično

izražen nekom matematičkom funkcijom (polinom, eksponencijalna, logaritamska funkcija i sl.).

3.1.2. NLRQ Za nelinearno kvantilno regresiranje koristi se funkcija nlrq, čija struktura je slična strukturi funkcije

nls (za nelineari regresioni model):

nlrq(formula,data=parent.frame(),tau=0.5,trace=FALSE, method="L-

BFGS-B", ...)

sa sljedećim argumentima:

formula formula kojom se predstavlja veza između varijabli (zavisne od nezavisne)

data neobavezni dio formule, okvir u kojem se spremaju podaci bitni za model

tau kvantila po kojoj se vrši regresiranje; prima vrijednosti u rasponu (0,1)

method metoda (algoritam) korištena u kalkulisanju regresije

... ostali opcioni argumenti

Page 8: Kvantilna regresija u R-u

7

3.1.3. ANOVA.RQ Ovo je proširenje funkcije rq, čime je omogućeno poređenje dvaju ili više regresionih modela. Njena

osnovna definicija izgleda ovako:

anova(objekt1, objekt2, objektn, test= "Wald", joint="TRUE", ...)

gdje su

objekt1, objekt2, ... matematički modeli (objekti) dobijeni korištenjem funkcije rq

test vrsta testa (opcije su Wald i rank)

joint parametar kojim se određuje da li se testiranje vrši grupno po svim

parametrima objekata (joint = TRUE) ili se svaki parametar

objekata testira posebno (joint = FALSE)

3.1.4. PREDICT.RQ Koristi se za izračunavanje vrijednosti zavisne promjenjive u regresijskom modelu:

predict(object,

type="none",interval=c("none","confidence"),level=.95, ...)

Argumenti funkcije su:

object objekt dobijen pozivom funkcije rq

type određuje način na koji se izražava interval povjerenja

interval određuje interval povjerenja (donje i gornje granice za svaku izračunatu

vrijednost modela)

level širina intervala povjerenja (između 0 i 1)

... ostali opcioni parametri

3.1.5. SUMMARY.RQ Proširena funkcija za prika sumarnih podataka o regresionom modelu, sa sljedećim parametrima:

summary (object, se="nid", covariance=FALSE, hs=TRUE, ...)

gdje je:

object objekt tipa rq za koji treba prikazati sumarne podatke

se standardna greška; moguće je odabrati sljedeće parametre: rank, iid, nid, ker, boot

covariance prikaz kompletne matrice kovarijanse hs Hall Sheather/Bofinger procjena raspršenosti ... ostali opcioni parametri

Page 9: Kvantilna regresija u R-u

8

3.1.6. LPRQ Funkcija lprq se koristi za podešavanje linije kvantilne regresije. To je funkcija koja opisuje na koji

način podesiti liniju kvantilne regresije s jednom nezavisnom promjenjivom. Definicija funkcije lprq

izgleda ovako:

lprq(x, y, h, tau = .5, m = 50)

x nezavisna promjenjiva

y zavisna promjenjiva

h propusni parametar

tau kvantila po kojoj se vrši regresiranje

m broj tačaka po kojima se funkcija procjenjuje

3.1.7. PLOT.RQ Ovo je standardna funkcija za grafički prikaz podataka dobijenih pomoću kvantilne regresije.

Definicija funkcije plot izgleda ovako:

plot(x,...)

x objekt dobijen pozivom funkcije rq ... opcioni argumenti za prikaz

Kod poziva funkcije plot za objekte dobijene pozivom funkcije rq može se dobiti poruka o greški:

Error in xy.coords(x, y, xlabel, ylabel, log) :

'x' and 'y' lengths differ

u slučaju da je odabrana samo jedna kvantila pri pozivu funkcije rq.

Funkcija plot može se primijeniti na objektima dobijenim korištenjem različitih funkcija – između

ostalog i funkcija rq i rqss. U osnovi, funkcija plot vizuelno predstavlja podatke koji joj se

proslijede. Tako je moguće za objekt tipa rqs pozvati funkciju plot na sljedeći način:

plot(x, parm = NULL, ols = TRUE,mfrow = NULL, mar = NULL, ylim = NULL, main = NULL, col = 1:2, lty = 1:2,

cex = 0.5, pch = 20, type = "b", xlab = "", ylab = "", ...)

x objekt dobijen pozivom funkcije rqs

parm odabir parametara koji će biti prikazani

ols logički parametar, prikazuje vrijednosti koeficijenata

dobijenih pomoću funkcije lm

mfrow, mar, ylim, main opcioni grafički parametri

col, lty grafički parametri

cex, pch, type, dodatni grafički parametri za prikaz

Page 10: Kvantilna regresija u R-u

9

xlab, ylab oznake koordinatnih osa

... ostali opcioni parametri

4. PRIMJENA FUNKCIJA NA ODABRANOM SETU PODATAKA

U nastavku će - korak po korak - biti objašnjena priprema seta podataka i primjena mogućnosti R –a u

numeričkom i vizuelnom predstavljanju tih podataka.

Originalni podaci se nalaze u dokumentu D:\cars.csv. Pozivom komande:

> automobili <- read.table("d:/cars.csv", sep = ";", header = TRUE)

podaci iz CSV fajla se prebacuju u R. Pristup podacima u R-u:

> automobili

> automobili$MPG

> automobili$HorsePowers

Prva naredba prikazuje cijeli set podataka, druga samo kolonu MPG, a treća samo kolonu

HorsePowers. Sumarni podaci (minimum, granice kvartila i maksimum) o skupu mogu se dobiti

naredbom summary:

Slika 5. Sumarni podaci o setu podataka

Vizuelni prikaz podataka moguće je dobiti naredbom:

plot(automobili$WeightInPounds)

što za rezultat ima dijagram sa Slike 6:

Page 11: Kvantilna regresija u R-u

10

Slika 6. Vizuelni prikaz jedne varijable

gdje su na apscisi predstavljeni redni brojevi automobila, a na ordinati njihova masa u funtama

(WeightInPounds). Za empirijski prikaz zavisnosti jedne varijable od druge može se koristiti

naredba:

> plot(automobili$MPG~automobili$WeightInPounds)

odnosno

plot(WeightInPounds~MPG, data=automobili)

čime se omogućuje prikaz zavisnosti varijable WeightInPounds od varijable MPG (Slika 7).

Slika 7. Zavisnost mase od potrošnje automobila (empirijski podaci)

Page 12: Kvantilna regresija u R-u

11

Prikaz sa Slike 7. ne daje naznake o prirodi zavisnosti, što se može upotpuniti ako se na dijagram doda

kriva aproksimacije pomoću funkcije lprq (Slika 8). Pošto je funkcija dio paketa QUANTREG,

potrebno je prethodno u R-u učitati paket, a onda pozvati funkciju kao u nastavku:

> aproks1 <- lprq(automobili$WeightInPounds, automobili$MPG, h=1,

tau = 0.1)

> lines(aproks1$xx, aproks1$fv, lty=1)

> aproks2 <- lprq(automobili$WeightInPounds, automobili$MPG, h=1,

tau = 0.5)

> lines(aproks2$xx, aproks2$fv, lty=1)

> aproks3 <- lprq(automobili$WeightInPounds, automobili$MPG, h=1,

tau = 0.95)

> lines(aproks3$xx, aproks3$fv, lty=1)

Funkcija lprq pozvana je triput, ali za različite vrijednosti parametra tau, kojim se određuje opseg

vrijednosti prediktora (mase automobila, WeightInPounds) na kojem se posmatra zavisnost

potrošnje (MPG). Prikazane su krive koje predstavljaju zavisnost za automobile sa prvih 10%

vrijednosti MPG5 (tau=0.1), za sredinu skupa (tau=0.5) i za automobile čije vrijednosti MPG-a

prelaze 95% vrijednosti u skupu (tau=0.95). Naredba lines prikazuje ove krive na dijagramu, pri

čemu su odstupanja dobijenih linija u odnosu na empirijske podatke – minimalna.

Slika 8. Zavisnost mase automobila od potrošnje goriva – za različite dijelove skupa prediktora

Krive sa Slike 8. ne predstavljaju regresione modele u smislu njihovog predstavljanja polinomom ili

drugim matematičkim izrazom. Takvi modeli mogu biti linearni ili nelinearni. Da bi se dobio linearni

regresioni model, koristi se funkcija rq kao u nastavku:

5 To su automobili koji prelaze najmanje milja po galonu goriva, odnosno najveći su potrošači u skupu.

Analogno tome, tau=0.95 predstavljaće najštedljivije automobile.

Page 13: Kvantilna regresija u R-u

12

> obj <- rq(WeightInPounds~MPG, data = automobili, tau=1:9/10)

čime se dobija objekt tipa rq koji odražava linearnu zavisnost mase od potrošnje automobila, i to za

različite podskupove prediktora:

Slika 9. Detalji objekta rq

Pozivom funkcije rq dobijaju se koeficijenti nagiba regresionog pravca, odsječci pravca na ordinati i

broj stepeni slobode u skupu prediktora. Sumarni podaci o objektu obj dobijaju se pozivom funkcije

summary za taj objekt:

> summary (obj)

Dio rezultata izvršavanja naredbe prikazan je na Slici 10:

Slika 10. Sumarni podaci za obj

Dobijeni objekt obj se može proslijediti funkciji plot:

plot(obj,parm=2,mar=c(5.1,4.1,2.1,2.1),main="",xlab="Kvantila",

ylab="Koeficijenti modela",cex=1,pch=19)

Tako se dobija prikaz sa Slike 11:

Page 14: Kvantilna regresija u R-u

13

Slika 11. Grafički prikaz parametara linearnog modela

Gornji dijagram na Slici 11 predstavlja odsječke regresionih linija za različite vrijednosti tau, a donji

dijagram koeficijente nagiba tih linija za iste vrijednosti tau.

Za vizuelni prikaz empirijskih podataka koristiće se funkcija plot, uz navođenje oznaka koordinatnih

osa i odabir zelene boje za prikaz empirijskih vrijednosti zavisne promjenjive. Za prikaz pravaca

regresije na istom dijagramu koristiće se naredba abline, pri čemu su vrijednosti parametra tau

sadržani u vektoru taus, a boje u vektoru boje. Pravci regresije istaknuti su različitim bojama u

zavisnosti od kvantile koju predstavljaju (Slika 12).

> plot(automobili$MPG,automobili$WeightInPounds, xlab="Milja po

galonu",ylab="Masa u funtama")

> points(MPG, WeightInPounds, cex=1,col="green")

> taus <- c(0.05,0.3,0.5,0.95)

> boje <- c("blue", "red", "gray", "black")

> for(i in 1:length(taus)){

abline(rq(WeightInPounds~MPG,tau=taus[i]),col=boje[i])}

Page 15: Kvantilna regresija u R-u

14

Slika 12. Pravci kvantilne regresije za različite kvantile

Usporedbom naredbi i slike se može zaključiti da plava linija predstavlja regresioni model za donjih

5% automobila prema vrijednostima MPG-a, a crna model za automobile sa potrošnjom iznad 95%

zabilježenih vrijednosti MPG-a.

Za ANOVA analizu devijacije dva linearna modela (za tau=0.1 i tau=0.99) može se koristiti

funkcija anova, kao u nastavku:

Slika 13. ANOVA analiza za dva objekta tipa rq

Linearni model ne daje uvijek očekivane rezultate u analizi zavisnosti varijabli, pa se pribjegava

korištenju nelinearnih modela. U analizi zavisnosti mase od potrošnje automobila treba na osnovu

Page 16: Kvantilna regresija u R-u

15

empirijskih podataka pretpostaviti matematički model, a zatim ga implementirati u R-u. Tako se iz

dijagrama sa Slike 8. može zaključiti da je zavisnost oblika6:

potrošnja

kmasa =

gdje se koeficijent k treba izračunati, i to za različite kvantile prediktora – primjenom funkcije nlrq:

fit <- nlrq(WeightInPounds~k/MPG,data=automobili,start=list(k=1))

Matematički model koji se treba implementirati u R-u predstavljaće ovu zavisnost, a empirijske

vrijednosti zavisne promjenjive razlikovaće se od vrijednosti koje se budu računale preko modela.

Stoga u implementaciji modela u R-u treba generisati vektor nezavisnih promjenjivih, a zatim

asocirati vrijednosti zavisne promjenjive u skladu sa navedenom formulom.

Za generisanje vektora nezavisnih promjenjivih modela koristi se naredba:

x <- seq(1, 50, length=500)

dužine 500 i sa donjom i gornjom granicom vrijednosti od 1 i 50 jedinica mjere, respektivno.

Za asociranje vrijednosti zavisne promjenjive modela koristi se naredba:

y <- (coef(fit)["k"]/x)

U nastavku će se u R-u kreirati više objekata tipa nlrq koji odražavaju nelinearnu vezu između

varijabli (fit005, fit03, fit05, fit095), analogno ranije kreiranim linearnim modelima

sa Slike 12. Koeficijenti k dobijeni u tim objektima uticaće na oblik krive regresije (Slika 14).

> plot(WeightInPounds~MPG, data=automobili)

> fit005 <- nlrq(WeightInPounds ~ k/MPG, data = automobili,

tau=0.05, start=list(k=1))

> fit03 <- nlrq(WeightInPounds ~ k/MPG, data = automobili, tau=0.3,

start=list(k=1))

> fit05 <- nlrq(WeightInPounds ~ k/MPG, data = automobili, tau=0.5,

start=list(k=1))

> fit095 <- nlrq(WeightInPounds ~ k/MPG, data = automobili,

tau=0.95, start=list(k=1))

> y005 <- predict(fit005,data.frame(MPG=x))

> lines(x, y005, col="blue")

> y03 <- predict(fit03,data.frame(MPG=x))

> lines(x, y03, col="red")

> y05 <- predict(fit05,data.frame(MPG=x))

> lines(x, y05, col="gray")

> y095 <- predict(fit095,data.frame(MPG=x))

> lines(x, y095, col="black")

6 Mogla se pretpostaviti i drugačija zavisnost (npr. logaritamska).

Page 17: Kvantilna regresija u R-u

16

Slika 14. Nelinearna kvantilna regresija za različite vrijednosti tau

Sa Slike 14. može se zaključiti da linije regresije sada bolje aproksimiraju empirijske podatke.

5. ZAKLJUČAK Iako je njena primjena još uvijek relativno rijetka, kvantilna regresija je pristup koji u odnosu na

klasičnu regresiju daje bolji i kvalitetniji uvid u prirodu pojava koje se analiziraju. Ipak, u ovom radu

autori nisu posvetili pažnju analizi dobijenih rezultata, već načinu na koji se oni mogu dobiti u R

softverskom alatu. Pritom su zbog ograničenog prostora izostavljene mnoge osnovne upute za rad u

R-u, kako bi fokus bio zadržan na osnovnim mogućnostima paketa QUANTREG, dobijanju rezultata i

njihovom vizuelnom predstavljanju.

U svakom slučaju, autori se nadaju da će ovaj rad pomoći korisnicima R-a da primijene mogućnosti

kvantilne regresije i da tako prošire dosadašnje mogućnosti rada u ovom alatu.

Page 18: Kvantilna regresija u R-u

17

Literatura

1. Quantile Regression (Econometric Society Monographs), Roger Koenker, Cambridge University

Press, 2005.

2. R Data Import/Export, verzija 2.13.1 (2011-07-08), zvanična skripta, http://cran.r-project.org

3. Quantile Regression in R: A vignette, R. Koenker, http://cran.r-project.org

4. QuantileRegression: R. Koenker, K. F. Hallock, Journal of Economic Perspectives, Vol. 15, Nr. 4,

2001, str. 143–156.

5. Skripte, uputstva za rad i opisi paketa u R-u sa http://www.r-project.org

6. Opis QUANTREG paketa sa http://svitsrv25.epfl.ch/R-doc/library/quantreg/html/00Index.html