Escolar Documentos
Profissional Documentos
Cultura Documentos
na linha soguinlo o nas sucossivas o conlinua a loi alo quo oioon osloja sinlaclicanonlo
conplola. Lslo snLolo oo conlinuaao pooo soi alloiaoo. Ioi convonao noslas nolas soia
onilioo o snLolo o a conlinuaao oo conanoo o inoicaoa polo avano oa linha.
1.9 Recuperao e correco de comandos anteriores
Ln anLionlo Winoows o on nuilas voisoos soL UNIX, I poinilo iocupoiai o oxoculai os
conanoos anloiioios. As solas voilicais oo loclaoo pooon usai-so paia poicoiioi o |..:.u Ju.
1
Os cononlaiios nao pooon insoiii-so oonlio oo caooias oo caiacloios, non no inloiioi oa lisla
oo aigunonlos oo una funao.
1 Inlioouao o piolininaios 0
unnnJu. oxoculaoos. Quanoo so livoi iocupoiaoo o conanoo piolonoioo, pooon usai-so as
solas hoiizonlais paia ooslocai o cuisoi ao longo oa linha oo conanoo, pooon olininai-so
caiacloios con a locla DLL, ou aoicionai nais caiacloios. No Aponoico C [O ooiloi oo
conanoos[, pag. 10, soiao oaoos nais poinonoios.
A iocupoiaao oo conanoos o as capacioaoos oo ooiao on anLionlo UNIX sao facilnonlo
configuiavois. Iooo oLloi nais infoinaao soLio oslo assunlo consullanoo o nanual oo UNIX
soLio rcuuI1nc ($ man readline)
1anLon pooo ulilizai o ooiloi oo loxlo cnucs (via LSS", 1nn. 5n|. 5n....), paia
liaLalhai nais conooanonlo oo nooo inloiaclivo con I. Voja a socao 1 nnJ 1nn." on
J| 1 .n...n| ...n 1".
1.10 Execuo de um ficheiro de comandos e re-direccionamento da
sada
So os conanoos oslao guaioaoos nun fichoiio oxloino, poi oxonplo unnnnJ..1`
localizaoo no oiiocloiio oo liaLalho, pooon soi oxoculaoos nuna sossao oo I con o conanoo
> source(commands.R)
Ln anLionlo Winoows, o conanoo sourcc osla oisponvol oonlio oo nonu Filo, opao
Sonrco R codo.
A funao s1nI
> sink(record.list)
iooiiocciona looas as saoas oa consola suLsoquonlos paia o aiquivo oxloino :u:J.|..`. O
conanoo:
> sink()
iooiiocciona novanonlo a saoa novanonlo paia a consola.
1.11 Guardar e eliminar de objectos
As onlioaoos ciiaoas o nanusoaoas poi I oosignan-so poi uh]u.. Lslos pooon soi
vaiiavois, vocloios ou naliizos oo nnoios, caooias oo caiacloios, funoos, ou nais
gonoiicanonlo osliuluias nais conploxas consliuoas a pailii oo ooslos olononlos nais sinplos.
Duianlo una sossao oo I, os oLjoclos sao ciiaoos o guaioaoos poi nonos (oslo assunlo soia
oisculioo nais on poinonoi na pioxina sossao). O conanoo:
> objects()
oa a lisla oos nonos oos oLjoclos piosonlononlo guaioaoos poi I. Iaia o nosno ofoilo lanLon
so pooo usai o conanoo:
> ls()
O conjunlo oo oLjoclos aclualnonlo guaioaoos poi I oosigna-so poi .nu J :nhn||u
(u:|.n`).
Iaia olininai oLjoclos usa-so o conanoo rn, cono poi oxonplo:
> rm(x, y, z, tinta, chaparro, temporal, barra)
1 Inlioouao o piolininaios 7
quo olinina os oLjoclos oosignaoos polos nonos x, y, z, linla, chapaiio, lonpoial, Laiia.
1ooos os oLjoclos ciiaoos nuna sossao oo liaLalho on I pooon soi oofinilivanonlo
guaioaoos nun aiquivo, a fin oo soion usaoos on sossoos fuluias. No final oo caoa sossao, ao
oai a oioon oo oncoiiai (conanoo T), o oaoa a opoilunioaoo paia guaioai looos os oLjoclos
aclualnonlo oisponvois. Caso o ulilizaooi oplo poi guaioai a sossao, os oLjoclos sao guaioaoos
nun fichoiio con o nono .HuuIu`
2
no oiiocloiio coiionlo.
Quanoo I o iniciaoo posloiioinonlo, o ospao oo liaLalho guaioaoo o iocupoiaoo, loinanoo
oisponvois os oLjoclos o o hisloiial oo conanoos guaioaoos nosso fichoiio.
L iocononoavol quo so ulilizon oiiocloiios oo liaLalho oislinlos paia as oivoisas analisos
ofocluaoas on I. L fioquonlo quo ciiai oLjoclos con os nonos gonoiicos lais cono x, y, z, olc.,
ouianlo una sossao. Lslos nonos pooon soi sugoslivos ouianlo a sossao onoo sao ciiaoos, nas
soia oxlionanonlo oifcil associai nonos ooslo lipo a oLjoclos quanoo so ioalizon vaiias analisos
no nosno oiiocloiio.
2
So o nono oo aiquivo conoa poi ponlo, oslo fica invisvol paia a lislagon noinal on UNIX.
2 Calculos sinplos. Nnoios o vocloios $
2 Clculos simples. Nmeros e vectores
2.1 Vectores numricos. Assignao
I uliliza oifoionlos .:&&:n. J JnJu.. A osliuluia nais sinplos o o u: n&n:.u (na
piosonlo sossao iionos ulilizai a oxpiossao vocloi cono iofoiinoo-so a vocloi nunoiico), quo o
un conjunlo oioonaoo oo nnoios. Iaia ciiai un vocloi, poi oxonplo con o nono x,
consliluoo poi cinco nnoios, poi oxonplo 10.4, .0, 8.1, 0.4 o 21.7, usa-so o conanoo:
> x <- c(10.4, 5.6, 3.1, 6.4, 21.7)
Lsla oioon o una assignaao ou aliiLuiao, on quo so uliliza a funao c]} quo, noslo
conloxlo, pooo loi un nnoio aiLiliaiio oo vocloios cono aigunonlo, o cujo iosullaoo o o
vocloi consliluoo pola concalonaao ou junao soquoncial oo looos olos
1
.
Un nnoio, poi si nosno, o consiooiaoo un vocloi oo conpiinonlo unilaiio.
Nolo-so quo o opoiaooi oo assignaao ou aliiLuiao a osquoioa (<-) nao o o opoiaooi
igualoaoo (=`) usual, quo so iosoiva paia oulio pioposilo. L consliluoo poi oois caiacloios
nonoi quo` (`) o nonos` (-) quo oLiigaloiianonlo oovon ii unioos o aponlan` paia o
oLjoclo quo iocoLo o valoi oa oxpiossao
2
.
A opoiaao oo assignaao lanLon pooo soi ofocluaoa con a funao uss1gn]}. Una nanoiia
oquivalonlo oo fazoi a assignaao anloiioi o:
> assign(x, c(10.4, 5.6, 3.1, 6.4, 21.7))
O opoiaooi assignaao usual (<-) pooo soi onlonoioo cono un alalho ou aLiovialuia oa
funao assign().
A assignaao lanLon so pooo fazoi a oiioila`, liocanoo oLvianonlo o snLolo oo
assignaao polo snLolo naioi quo` quo aponla a oiiocao a oiioila(islo o, ->`). A nosna
opoiaao oo assignaao pooo assin soi foila oo soguinlo nooo:
> c(10.4, 5.6, 3.1, 6.4, 21.7) -> x
So una oxpiossao o usaoa cono conanoo lal qual, son assignaao, o sou valoi o calculaoo,
visualizaoo no ocian, o poioo-so
8
. Assin, o conanoo:
> 1/x
sinplosnonlo calcula os invoisos oos cinco valoios anloiioios (aliiLuoos ao vocloi x), o inpiino
o iosullaoo no ocian (o o valoi oo x, oLvianonlo, nao o alloiaoo).
1
Con aigunonlos oo oulio lipo, poi oxonplo lisl, a acao oa funao F pooo soi oifoionlo.
Voja-so a Socao 0.2.1 [Concalonaao oo lislas[, pag. 84.
2
O caiacloi oo suLlinhaoo (`) o un sinonino oo opoiaooi assignaao a osquoioa (-), nas
nao so aconsolha a sua ulilizaao pois iosulla nun cooigo nonos logvol.
8
O valoi o guaioaoo na vaiiavol .1usI.ruIuc quo o guaioa alo quo soja oxoculaoo oulia oioon.
2 Calculos sinplos. Nnoios o vocloios 0
A assignaao:
> y <- c(x, 0, x)
ciia o vocloi y con 11 olononlos, consliluoos poi ouas copias oo x con o valoi 0 (zoio) onlio
anLas, islo o, 10.4, .0, 8.1, 0.4, 21.7, 0, 10.4, .0, 8.1, 0.4, 21.7.
2.2 Aritmtica sobre vectores
Os vocloios pooon usai-so on oxpiossoos aiilnolicas, caso on quo as opoiaoos so ioalizan
olononlo a olononlo. Dois vocloios quo so ulilizon na nosna oxpiossao nao lon quo,
oLiigaloiianonlo, soi oo nosno conpiinonlo. So o nao sao, o iosullaoo o un vocloi con o
conpiinonlo oo vocloi nais longo, o o nais cuilo o ulilizaoo ciclicanonlo, iopolinoo-so lanlas
vozos quanlas as nocossaiias (pooo aconlocoi quo so iopila un nnoio nao inloiio oo vozos), alo
quo coincioa con o conpiinonlo oo nais longo. Ln pailiculai, una conslanlo ou un vocloi
unilaiio soia sinplosnonlo iopolioa lanlas vozos quanlo o conpiinonlo oo vocloi nais longo.
Doslo nooo, o sonoo x o y os vocloios alias oofinioos, a oioon:
> v <- 2*x + y + 1
ciia un novo vocloi, v, oo 11 olononlos, on quo caoa un oolos o o iosullaoo oa sona oo ooLio
oo caoa olononlo oo vocloi x, iopolioo 2.2 vozos (as nocossaiias paia igualai o conpiinonlo oo
y) , con o olononlo iospoclivo oo vocloi y, iopolioo una so voz, o con o valoi 1, iopolioo 11
vozos, islo o, os olononlos oo v sao: 82.2, 17.$, 10.8, 20.2, 00.1, 21.$, 22.0, 12.$, 10.0, 0.$, 48..
Os opoiaooios aiilnolicos olononlaios sao os haLiluais +, -, *, / o ^ paia poloncias.
1anLon oslao oisponvois as funoos aiilnolicas conuns: Iog, ci, s1n, cos, Iun, sgrI lon o
sou significaoo usual. As funoos n1n o nui oLlon os valoios nnino o naxino oo un vocloi,
iospoclivanonlo. A funao rungc oa cono iosullaoo un vocloi oo conpiinonlo 2, o cujos
olononlos sao c(nin(x), nax(x)); IcngII(x) oa o nnoio oo olononlos ou conpiinonlo oo
vocloi x; sun(x) calcula a sona oo looos os valoios conlioos no vocloi x, o rou(x) o
iospoclivo piooulo.
Duas funoos oslalslicas sao ncun(x), quo calcula a nooia, islo o:
> sum(x)/length(x)
o rur(x) quo calcula a vaiiancia oa anoslia, islo o:
> sum((x-mean(x))^2)/(length(x)-1)
So o aigunonlo oo vai() o una naliiz n p , o iosullaoo o a naliiz p p oo vaiiancia-
covaiiancia coiiosponoonlo a inloipiolai as linhas cono p vocloios anosliais inooponoonlos.
A funao sorI(x) oiigina un vocloi oa nosna oinonsao oo x, on quo os olononlos oslao
oioonaoos poi oioon ciosconlo. Iaia o nosno ofoilo lanLon so oispoo oas funoos orucr() o
sorI.I1sI(), nais floxvois, quo pioouzon a poinulaao oo x coiiosponoonlo a oioonaao.
Nolo-so quo nax() o nin() soloccionan os valoios naxino o nnino nos aigunonlos
ospocificaoos, nosno lialanoo-so oo vaiios vocloios. As funoos paialolas paia naxino o
nnino, iospoclivanonlo nui() o n1n), oao cono iosullaoo un vocloi (oo conpiinonlo
igual ao oo naioi oinonsao ospocificaoo on aigunonlo), on quo caoa olononlo o o olononlo
2 Calculos sinplos. Nnoios o vocloios 10
naxino (ou nnino) na posiao iospocliva on qualquoi oos vocloios ospocificaoos on
aigunonlo.
Na naioiia oos casos o ulilizaooi nao oovo pioocupai-so so os nnoios` nun vocloi
nunoiico sao valoios inloiios, ioais ou nosno conploxos. Inloinanonlo os calculos sao
oxoculaoos cono nnoios oo oupla piocisao, ioais ou inaginaiios, consoanlo os oaoos onliaoos.
Iaia liaLalhai con nnoios conploxos, oovo-so inoicai oxplicilanonlo a pailo conploxa.
Assin:
> sqrt(-17)
oaia cono iosullaoo 1u1 (Au n A&nh:`) o una nonsagon oo aovoiloncia; nas:
> sqrt(-17+0i)
ioaliza coiioclanonlo o calculo oa iaiz quaoiaoa ooslo nnoio conploxo.
2.3 Gerar sequncias regulares
Ln I oxislon vaiias funoos paia goiai sucossoos ou soquoncias nunoiicas. Ioi oxonplo,
1:30 o o vocloi c(1, 2, ... , 20, 80). O opoiaooi :` (oois ponlos) lon piioiioaoo naxina nuna
oxpiossao onoo soja usaoo; assin ,poi oxonplo, 2*1:1 o o vocloi c(2, 4, ... , 2$, 80). Faa o
conanoo n <- 10 o conpaio as soquoncias 1:n-1 o 1:(n-1).
A oxpiossao 30:1 pooo usai-so paia consliuii a soquoncia oociosconlo.
A funao scg() poinilo goiai soquoncias nais conploxas. Dispoo oo cinco aigunonlos,
onLoia nao so ulilizon looos on sinullanoo. Os oois piinoiios aigunonlos, so ospocificaoos,
inoican o incio o o fin oa soiio o so oslos sao os nicos aigunonlos, o iosullaoo o oquivalonlo
ao oo opoiaooi oois ponlos`. Islo o, o iosullaoo oo soq(2,10) o o nosno oo 2:10.
Os paianolios paia a funao soq(), Lon cono paia oulias funoos, pooon ospocificai-so
soquoncialnonlo (islo o, na oioon o quo oovon soi inloipiolaoos), ou onlao polo nun Ju
n:j&nnu, sonoo noslo caso a sua oioon iiiolovanlo.
No caso oa funao soq(), os oois piinoiios paianolios pooon soi ospocificaoos polo nono,
nooianlo a inoicaao ]ron=ruIor_1n1c1uI o Io=ruIor_]1nuI; assin, soq(fion=1, lo=80)
soq(1,80), soq(lo=80, fion=1) oiiginan a nosna soquoncia ioonlica a oLlioa con 1:80.
Os oois aigunonlos soguinlos sao I=1ncrcncnIo o IcngII=ruIor, quo ospocifican o
inciononlo onlio oois valoios sucossivos o o conpiinonlo oa sucossao, iospoclivanonlo. So
nonhun ooslos aigunonlos o ospocificaoo, o valoi poi oofoilo oo inciononlo o a unioaoo (islo o,
Ly=1).
Ioi oxonplo:
> seq(-5,5, by=.2) -> s3
ciia o vocloi s8 cujos olononlos sao c(-.0, -4.$, -4.0, ... , 4.0, 4.$, .0). Do nooo sinilai:
> s4 <- seq(length=51, from=-5, by=.2)
goia o vocloi s4 cujos olononlos sao os nosnos oo vocloi s8.
2 Calculos sinplos. Nnoios o vocloios 11
O quinlo aigunonlo oosla funao o uIong=rccIor, o so so usa oovo soi o nico paianolio
ospocificaoo, o ciia a soquoncia 1, 2, ... , longlh(vocloi), ou una sucossao vazia so o vocloi o
vazio (o quo pooo aconlocoi).
Una funao iolacionaoa con soq() o a funao rc() quo pooo soi usaoa paia ioplicai un
oLjoclo oo oivoisas nanoiias. A foina nais sinplos o:
> s5 <- rep(x, times=5)
quo coloca soquoncialnonlo copias oo x no vocloi s.
2.4 Vectores lgicos
1al cono vocloios nunoiicos, I nanipula igualnonlo valoios logicos. Os olononlos oo un
vocloi logico sao un oos oois valoios possvois: FALSE (Falso) o TRUE (Voioaooiio). Lslos
valoios sao goialnonlo aLioviaoos paia F o T, iospoclivanonlo.
Os vocloios logicos sao o iosullaoo oa avaliaao oo unJ.u.. Ioi oxonplo:
> temp <- x > 13
ciia o vocloi lonp con o conpiinonlo oo vocloi x, o cujos olononlos sao FALSL
coiiosponoonlos aos valoios oo x quo nao salisfaan a conoiao, ou 1IUL paia os olononlos oo
x quo a cunpian a conoiao oo soi supoiioi a 18.
Os opoiaooios logicos sao , =, , =, == paia a igualoaoo oxacla o != paia a
oosigualoaoo. Alon ooslos opoiaooios, o sonoo c1 o c2 ouas oxpiossoos logicas, onlao c1 \ c2 o a
sua inloicopao (ano"), c1 [ c2 o a sua iouniao (oi") o !c1 o a nogaao oo c1.
Os opoiaooios logicos pooon soi usaoos nas opoiaoos aiilnolicas oioinaiias, caso on quo
so liansfoinan on vocloios nunoiicos, sonoo FALSL suLsliluoo poi 0 (zoio) o 1IUL poi 1
(un). Conluoo, ha siluaoos on quo os vocloios logicos o as suas liansfoinaoos nunoiicas
coiiosponoonlos nao sao oquivalonlos, cono so voia na pioxina suL-socao.
2.5 Valores em falta
Ln alguns casos pooo aconlocoi nao so conhocoion looos os olononlos oo un vocloi.
Quanoo un olononlo ou valoi nao osla oisponvol, ou osla on falla (n....nj n|&", no sonlioo
oslalslico), o-lho aliiLuoo o valoi ospocial 1/ (oo inglos, Au n.|nh|"). Do un nooo goial,
qualquoi opoiaao onvolvonoo un valoi NA oiigina un oulio valoi NA. A juslificaao paia osla
iogia o sinplosnonlo quo a ospocificaao oo una opoiaao nao osla conplola, o iosullaoo oosla
nao pooo soi conhocioo, nao oslanoo oisponvol paia opoiaoos suLsoquonlos.
A funao 1s.nu]i} oiigina un vocloi logico con a oinonsao oo x, con o valoi 1IUL so o
so so o coiiosponoonlo olononlo oo x o NA, o FALSL no caso conliaiio. Voja-so o soguinlo
oxonplo, on quo o ciiaoo o vocloi z, on quo os piinoiios lios valoios sao os valoios 1, 2, 8, o o
quailo valoi o un nissing valuo"; o vocloi ino lon os piinoiios 8 olononlos con o valoi
FALSL o o quailo valoi o 1IUL:
> z <- c(1:3,NA); ind <- is.na(z)
2 Calculos sinplos. Nnoios o vocloios 12
Nolo-so quo a oxpiossao logica x == NA o oifoionlo oo is.na(x), pois NA nao o na ioalioaoo
un valoi nas sin un inoicaooi oo un valoi quo nao osla oisponvol. Doslo nooo, x == NA oa
oiigon a un vocloi con a oinonsao oo x, cujos olononlos sao looos NA pois a oxpiossao logica
osla inconplola o, poi consoquoncia, iiiosolvol.
Iofiia-so ainoa quo ha un sogunoo lipo oo nissing valuos" quo sao oiiginaoos poi calculos
inooloininaoos, oosignaoos poi valoios 1u1 (Au n A&nh:"). Alguns oxonplos oo valoios
NaN sao os pioouzioos poi oxpiossoos inooloininaoas oo lipo:
> 0/0
> Inf - Inf
Ln conclusao, is.na(x) oiigina o valoi 1IUL quoi con valoios NA cono NaN; a funao
1s.nun]i} oa 1IUL aponas con valoios NaN.
2.6 Vectores alfanumricos
Valoios alfanunoiicos o vocloios oo caiacloios sao usaoos fioquonlononlo on I, cono poi
oxonplo paia as .j&n. (|nh|.") oos giaficos. Quanoo sao nocossaiios, os valoios
alfanunoiicos sao oofinioos cono caooias oo caiacloios oolinilaoas poi aspas ouplas, poi
oxonplo valoios x", Iosullaoo oo nova iloiaao".
As caooias oo caiacloios pooon soi concalonaoas paia un vocloi alfanunoiico usanoo a
funao c(); o fioquonlo o uso oosla opoiaao.
A funao usIc() lona cono onliaoa un nnoio vaiiavol oo aigunonlos o aoiciona-os un
a un soquoncialnonlo nuna caooia oo caiacloios. Quaisquoi valoios nunoiicos oaoos cono
aigunonlo oa funao paslo() sao convoilioos on caooias oo caiacloios, oa nosna nanoiia cono
aconlocoiia ao soion inpiossos. Os aigunonlos sao, poi oofoilo, sopaiaoos no vocloi iosullanlo
poi un ospao on Lianco, nas oslo caiacloi oo sopaiaao pooo soi oofinioo, usanoo o paianolio
sc=scuruuor, on quo a oxpiossao sopaiaooi" oofino o sopaiaooi a usai (pooo
inclusivanonlo soi nulo).
Ioi oxonplo:
> labs <- paste(c(X,Y), 1:10, sep=)
guaioa on laLs o soguinlo vocloi oo caiacloios:
c("X1", "Y2", "X3", "Y4", "X5", "Y6", "X7", "Y8", "X9", "Y10")
Caso nao so houvosso oofinioo un sopaiaooi nulo, o vocloi oo caiacloios soiia:
c("X 1","Y 2","X 3","Y 4","X 5","Y 6","X 7","Y 8","X 9","Y 10")
Nolo-so quo o vocloi c(X","Y"), con aponas oois valoios, o iopolioo cinco vozos alo
poifazoi o conpiinonlo oa soquoncia 1:10
4
.
4
paslo(..., collapso="sopaiaooi") poinilo colapsai os aigunonlos oa funao nuna nica caooia
oo caiacloios. Lxislon oulias funoos paia nanipulai caiacloios, lais cono suI() o
suIsIr1ng(). Voi ajuoa.
2 Calculos sinplos. Nnoios o vocloios 18
2.7 Vectores indexados. Seleco e modificao de sub-vectores
SuL-conjunlos oo olononlos oo un vocloi pooon soi soloccionaoos oanoo ao nono oo vocloi
un vocloi oo noicos oofinioos onlio paionlosis ioclos. Mais gonoiicanonlo, pooon soloccionai-so
suL-conjunlos oo olononlos oo qualquoi oxpiossao quo soja calculaoa o aliiLuoa a un vocloi,
aliavos oa inoicaao oo un vocloi oo noicos inooialanonlo apos a oxpiossao.
1ais vocloios oo noicos pooon poiloncoi a una oas soguinlos qualio calogoiias:
1. Vocfor lgico. Noslo caso, o vocloi oo noicos oovo soi oa nosna oinonsao oo vocloi oo
qual so soloccionan os olononlos. Os olononlos coiiosponoonlos a 1IUL sao
soloccionaoos o os quo coiiosponoon a FALSL sao onilioos. Ioi oxonplo:
> y <- x[!is.na(x)]
ciia o oLjoclo y quo conlon os valoios oofinioos oo x, na nosna soquoncia. Nolo-so quo
so x conlon nissing valuos" y soia oo conpiinonlo infoiioi a x. Do nosno nooo:
> (x+1)[(!is.na(x)) & x > 0] -> z
ciia o oLjoclo z onoo coloca os valoios oo x1 paia os quais o iospoclivo valoi oo x
osloja oofinioo o soja posilivo.
2. Vocfor do valoros infoiros osifivos. Noslo caso, os valoios oo vocloi noico oovon
poiloncoi ao conjunlo |1, 2, 8, ... , longlh(x) . Os olononlos coiiosponoonlos oo vocloi
sao soloccionaoos o concalonaoos, nosla oioon, no vocloi iosullanlo. O vocloi oo noicos
pooo soi oo qualquoi oinonsao o o iosullaoo o oa nosna oinonsao oo vocloi oo noicos.
Ioi oxonplo, x[0[ o o soxlo olononlo oo x o
> x[1:10]
solocciona os piinoiios 10 olononlos oo x (assuninoo quo longlh(x) nao o infoiioi a 10).
Do nooo ioonlico:
> c(x, y)[rep(c(1,2,2,1), times=4)]
oiigina una caooia oo caiacloios oo conpiinonlo 10, consliluoa pola soquoncia x" y"
y" x" iopolioa qualio vozos.
8. Vocfor do valoros infoiros nogafivos. Un vocloi oo noicos ooslo lipo ospocifica quo os
olononlos oovon soi oxcluoos, o nao soloccionaoos. Lnlao:
> y <- x[-(1:5)]
solocciona paia o vocloi y oosoo o 0 alo ao llino olononlo oo x.
4. Vocfor alfannmorico. Lsla opao so pooo ioalizai-so aplicaoa a un oLjoclo con o
aliiLulo nanos oofinioo paia ioonlificai os sous conpononlos. Noslo caso, un suL-vocloi
oo vocloi oo nonos pooo soi usaoo oo nosno nooo quo o vocloi oo valoios inloiios
alias oosciilo.
> fruta <- c(5, 10, 1, 20)
> names(fruta) <- c(laranja, banana, ma, pra)
> jantar <- fruta[c(ma, laranja)]
O vocloi janlai conlon os valoios 1 o .
2 Calculos sinplos. Nnoios o vocloios 14
A vanlagon oos noicos alfanunoiicos o quo sao nais facois oo iocoioai quo os vocloios
oo noicos nunoiicos. Lsla opao o pailiculainonlo lil quanoo associaoa a Jnn
:nn." (]oIIus uc uuuos), cono so voia posloiioinonlo.
Nuna oioon oo assignaao, lanLon so pooo inooxai a vaiiavol ou vocloi a qual iiao soi
assignaoos valoios; noslo caso, a aliiLuiao oo valoios ioaliza-so aponas aos olononlos inooxaoos.
A oxpiossao oovo soi oa foina vocloi[vocloinoico[ ja quo a ulilizaao oo una oxpiossao
aiLiliaiia on voz oo nono oo vocloi nao faiia sonlioo noslo conloxlo.
O vocloi ao qual so iiao aliiLuii valoios oovo soi oa nosna oinonsao oo vocloi oo noicos,
o no caso oo so lialai oo un vocloi inooxaoo logico lon oo soi oo nosno conpiinonlo oo
vocloi quo inooxa. Ioi oxonplo:
> x[is.na(x)] <- 0
suLslilui qualquoi olononlo oo x nao oofinioo polo valoi 0, o:
> y[y < 0] <- -y[y < 0]
faz o nosno quo:
> y <- abs(y)
2.8 Classes de objectos
Os vocloios sao o lipo nais inpoilanlo oo oLjoclos on I, nas ha vaiios oulios lipos oo
oLjoclos aos quais nos iofoiiionos oo nanoiia nais foinal nos pioxinos caplulos.
- 1uIr1zcs ou, nais gonoiicanonlo, rur1rc1s 1nuciuuus (::nj.`) sao a gonoializaao
nulli-oinonsional oos vocloios. Do faclo, sao vocloios quo pooon soi inooxaoos poi oois
ou nais noicos, quo coiiosponoon a oulias lanlas oinonsoos, o quo soiao visualizaoas
oo nooo ospocial. Voja-so Caplulo [Vaiiavois inooxaoas. Maliizos[, pag. 22.
- Os ]ucIorcs sao osliuluias oo oaoos quo soivon paia iopiosonlai oaoos calogoiicos.
Voja-so Caplulo 4 [Facloios[, pag. 10.
- As I1sIus sao foinas goiais oo vocloios on quo os oivoisos olononlos nao nocossilan oo
soi oo nosno lipo, o quo nuilas vozos sao, poi sua voz, vocloios ou lislas. As lislas
possiLililan un nooo convonionlo oo apiosonlai os iosullaoos oo calculos oslalslicos.
Voja-so Socao 0.1 [Lislas[, pag. 82.
- As ]oIIus uc uuuos (Jnn :nn.") sao osliuluias on foina oo laLola oo lipo
naliicial, nas quais as colunas pooon soi oo oifoionlos lipos. As laLolas oo oaoos sao
apiopiiaoas paia iopiosonlai naliizos oo oaoos, on quo caoa linha so iofoio a una
unioaoo oo oLsoivaao ou inoivouo o as colunas iopiosonlan as vaiiavois oLsoivaoas, o
quo pooon soi nunoiicas ou alfanunoiicas. Muilos iosullaoos oxpoiinonlais sao
facilnonlo iopiosonlaoos nuna laLola oo oaoos: os lialanonlos sao vaiiavois calogoiicas
o as vaiiavois iosposla sao vaiiavois nunoiicas. Socao 0.2 [1aLolas oo oaoos[, pag. 84.
- As ]unocs sao olas piopiias consiooiaoas on I cono oLjoclos, quo pooon soi
guaioaoos no ospao oo liaLalho. Doslo nooo, o ulilizaooi pooo oosonvolvoi o guaioai
2 Calculos sinplos. Nnoios o vocloios 1
as suas piopiias funoos, anplianoo as capacioaoos oo I. Voja-so Caplulo 10 [Dofina as
suas piopiias funoos[, pag. 2.
8 OLjoclos: nooos o aliiLulos 10
3 Objectos: modos e atributos
3.1 Atributos intrnsecos: modo e dimenso
As onlioaoos quo I nanipula oosignan-so poi uh]u.. Lxonplos oo oLjoclos sao vocloios
oo valoios ioais, vocloios oo nnoios conploxos, vocloios oo valoios logicos o vocloios oo caooias
oo caiacloios (ou vocloios alfanunoiicos). Lslos oLjoclos sao oosignaoos poi osliuluias
alonicas`, pois os sous olononlos sao looos oo nosno lipo, ou nuJu, nonoaoanonlo n&n:.u
1
,
un|.u, |j.u ou n|nn&n:.u, iospoclivanonlo.
Os vocloios oovon loi uJu. u. .&. n|u:. Ju n.nu nuJu, |j.u, n&n:.u, un|.u ou
n|nn&n:.u. Islo o, un vocloi nao pooo soi anLguo on iolaao ao lipo oo valoios quo conlon.
A nica oxcopao a osla iogia o quo looos os lipos oo vocloios pooon conloi o valoi ospocial
1/ paia olononlos nao oofinioos. Mosno quo un vocloi osloja vazio, lon na nosna un nooo.
Ioi oxonplo, un vocloi alfanunoiico vazio apaioco cono cIurucIcr]U} o un vocloi nunoiico
vazio cono nuncr1c]U}.
As lislas nanusoaoas poi I sao oo nooo I1sI. Lslas sao soquoncias oioonaoas oo oLjoclos,
caoa qual pooo soi oo nooo oislinlo. As lislas sao oosignaoas poi osliuluias iocuisivas`, on voz
oo alonicas`, pois os sous olononlos pooon soi oulias lislas.
As oulias osliuluias iocuisivas` sao as funoos cujo nooo o ]uncI1on" o as oxpiossoos
con nooo circss1on". O nooo funao ongloLa as funoos quo fazon pailo oo sislona I Lon
cono as funoos oofinioas polo ulilizaooi, quo soiao oisculioas posloiioinonlo. Os oLjoclos cujo
nooo o oxpiossao consliluon un nooulo avanaoo oo I, quo nao soia aLoioaoo noslas nolas,
apailo oo nnino nocossaiio ao lialanonlo oo foinulas na oosciiao oo nooolos oslalslicos.
Con o nooo oo un oLjoclo oosigna-so o lipo funoanonlal oo oos sous olononlos
consliluinlos. O nooo o un caso pailiculai oos n:.h&u. oo un oLjoclo. Os n:.h&u. foinocon
infoinaao ospocfica acoica oo oLjoclo. Oulio aliiLulo o a oinonsao conpiinonlo (|nj|") oo
un oLjoclo. As funoos nouc]oI]ccIo} o IcngII]oI]ccIo} usan-so paia saLoi qual o nooo o o
conpiinonlo oo qualquoi osliuluia oofinioa.
Iooon aliiLuii-so oulios piopiiooaoos a un oLjoclo con a funao uIIr1IuIcs]oI]ccI},
cono so voia na Socao 8.8[OLloi o oofinii aliiLulos[, pag. 17. Ioi isso, nooo o longhl sao
oosignaoos poi aliiLulos inlinsocos oo oLjoclo.
Ioi oxonplo, so z o un vocloi oo oinonsao 100 oo nnoios conploxos, onlao o iosullaoo oa
funao nouc]z} o conIci" o o oo IcngII]z} o o valoi 100.
I piovoca a alloiaao oo nooo oo un oLjoclo sonpio quo consiooio nocossaiio osla
alloiaao (o nosno on siluaoos on quo o nao o). Ioi oxonplo, con o vocloi:
> z <- 0:9
1
O nooo nunoiico consislo na ioalioaoo oo oois nooos oislinlos: .n.:u o J&|n :..nu.
8 OLjoclos: nooos o aliiLulos 17
pooo oofinii-so:
> digitos <- as.character(z)
apos o quo oigilos passa a soi o vocloi alfanunoiico c(0", 1", 2", ... , 0"). Una piovocaao
nais paia alloiai o nooo, o io-conslioi-so oo novo un vocloi nunoiico:
> d <- as.integer(digitos)
Noslo nononlo, o o z sao o nosno vocloi
2
. Ha un vaslo loquo oo funoos oa foina
us..un|.nj) paia piovocai a alloiaao oo nooo, ou paia invoslii un oLjoclo con algun
aliiLulo oo quo nao oisponha. O ulilizaooi oovo consullai os oivoisos aiquivos oo ajuoa paia so
faniliaiizai con oslas funoos.
3.2 Alterar a dimenso de um objecto
Un oLjoclo vazio (islo o, son olononlos) lon un nooo. Ioi oxonplo:
> e <- numeric()
oofino a osliuluia o cono un vocloi nunoiico vazio. Do nooo sinilai, cIurucIcr]} oofino un
vocloi alfanunoiico vazio. Una voz quo o oLjoclo oo qualquoi oinonsao lonha sioo ciiaoo,
novos olononlos pooon soi-lho aliiLuoos sinplosnonlo oanoo un valoi oo noico foia oa sua
aclual oinonsao. Assin:
> e[3] <- 17
piovoca quo agoia o vocloi o lonha oinonsao8 (os oois piinoiios olononlos sao noslo nononlo
1/). Lsla iogia aplica-so a qualquoi osliuluia, oosoo quo o nooo oos olononlos aoicionais soja
concoioanlo con o nooo oo oLjoclo.
Lslo ajuslanonlo aulonalico oa oinonsao oo un oLjoclo o usaoo fioquonlononlo, poi
oxonplo con a funao scun]} paia fazoi a onliaoa oo valoios. (Voja Socao 7.2 [A funao
scan()[, pag. 80).
Do nooo sonolhanlo, paia liuncai a oinonsao oo un oLjoclo ioquoi aponas un conanoo
oo assignaao. So n|n o un oLjoclo oo oinonsao 10, onlao:
> alfa <- alfa[2*1:5]
liansfoina alfa nun oLjoclo oo oinonsao , consliluoo aponas polos olononlos oo noico pai.
Os olononlos oo noico npai nao sao iolioos.
3.3 Obter e definir atributos
A funao uIIr1IuIcs]oI]ccIo) oa a lisla oo looos os aliiLulos nao inlinsocos aclualnonlo
oofinioos paia o oLjoclo on causa. A funao uIIr]oI]ccIo, uIr1IuIo} pooo soi usaoa paia
soloccionai un aliiLulo ospocfico. Lslas funoos so iaianonlo sao usaoas, oxcoplo on
ciicunslancias Laslanlo ospociais, quanoo un novo aliiLulo lon oo soi oofinioo con una
2
Goialnonlo a foiagon oo alloiaao oo nooo nunoiico paia alfanunoiico, o oo novo paia
nunoiico nao o oxaclanonlo iovoisvol, oovioo aos pioLlonas oo aiiooonoanonlo oos ogilos
oos valoios.
8 OLjoclos: nooos o aliiLulos 1$
finalioaoo ospocfica, lal cono poi oxonplo associai a oala oo ciiaao ou un opoiaooi con un
oLjoclo. O concoilo o, conluoo, nuilo inpoilanlo.
Dovo soi oaoo nuilo cuioaoo quanoo so oofinon ou olininan aliiLulos, pois olos fazon
pailo inlogial oo oLjoclo usaoo on I.
Quanoo a funao uIIr]} o usaoa no laoo osquoioo oo un conanoo oo assignaao, pooo soi
usaoa quoi paia associai un novo aliiLulo quoi paia alloiai un aliiLulo oxislonlo. Ioi
oxonplo:
> attr(z,dim) <- c(10,10)
poinilo quo I lialo z cono una naliiz oo 10 linhas poi 10 colunas.
3.4 Classes de objectos
Un aliiLulo ospocial oosignaoo poi |n.. (classo) oo oLjoclo o usaoo paia vocacionai osso
oLjoclo paia o oslilo oo piogianaao on I.
Ioi oxonplo so un oLjoclo o oa classo Jnn.:nn", soia visualizaoo sogunoo una
ooloininaoa foina, a funao IoI]} visualiza-lo-a oo ooloininaoa foina, o qualquoi oulia
funao oo uso gonoiico lal cono sunnur]} ioagiiao poianlo oslo oLjoclo oo una nanoiia
ospocificanonlo oiionlaoa paia osla classo.
Iaia ionovoi lonpoiaiianonlo os ofoilos oo classo oo un oLjoclo, usa-so a funao
uncIuss]}. Ioi oxonplo, so invoino o oa classo Jnn.:nn" onlao:
> inverno
visualiza oslo oLjoclo na foina oo laLola oo oaoos, quo o sonolhanlo a una naliiz, onquanlo
quo:
> unclass(winter)
o visualizaia cono una lisla noinal. Sononlo on siluaoos nuilo ospociais vai sonlii a
nocossioaoo oo usai osla capacioaoo, nas oslanos no ponlo on quo osla a faniliaiizai-so con os
concoilos oo classo o funoos.
As funoos o as classos soiao posloiioinonlo oisculioas oo nooo nuilo iosunioo na Socao
10.0 [Oiionlaao paia oLjoclos[, pag. 08.
4 Facloios 10
4 Factores
Un ]ucIor o un vocloi quo so usa paia ospocificai una classificaao oisciola on calogoiias
oos conpononlos oo oulios vocloios oa nosna oinonsao. Ln I oxislon nu:. u:JnnJu. o
nnu u:JnnJu.. So Lon quo as aplicaoos pialicas oo facloios soja na oofiniao oo foinulas oo
nooolos oslalslicos (voja Socao 11.1.1 [Conliaslos[, pag. 07), aqui linilai-nos-onos a
apiosonlai alguns oxonplos.
4.1 Um exemplo especfico
Suponha quo so oispoon oo una anoslia oo 80 piofissionais liLoiais oo oivoisos oisliilos oo
conlinonlo; o vocloi piovincia conlon as iniciais oa piovncia
1
oo caoa un oos olononlos oosla
anoslia:
> provincia <- c("tmd", "bl", "min", "rib" , "rib", "ba", "alt",
"alt", "min", "alg", "rib", "alg", "min", "min", "bl", "tmd",
"bl", "ba", "alt", "alg", "min", "rib", "rib", "alt", "bl",
"bb", "rib", "alg", "alg", "bb")
Iaia ciiai un nu: a pailii oo vocloi piovincia, usa-so a funao ]ucIor]}:
> fprovincia <- factor(provincia)
A funao r1nI]} nanusoia os facloios oo nooo ospocfico, o a saoa o a soguinlo:
> fprovincia
[1[ lno Ll nin iiL iiL La all all nin alg iiL alg nin nin Ll lno Ll La all
[20[ alg nin iiL iiL all Ll LL iiL alg alg LL
Lovols: alg all La LL Ll nin iiL lno
Iaia oLloi as calogoiias oo un facloi usa-so a funao IcrcIs]}:
> levels(fprovincia)
[1[ "alg" "all" "La" "LL" "Ll" "nin" "iiL" "lno"
4.2 A funo tapply() e variveis indexadas desiguais
Ln conlinuaao oo oxonplo anloiioi, suponhanos quo oisponos oo oulio vocloi conlonoo
os ionoinonlos oossos conlaLilislas (nooioos nuna unioaoo nonolaiia apiopiiaoa):
> rendimento <- c(60, 49, 40, 61, 64, 60, 59, 54, 62, 69, 70,
42, 56, 61, 61, 61, 58, 51, 48, 65, 49, 49, 41, 48,
52, 46, 59, 46, 58, 43)
Iaia calculai a nooia anoslial oo caoa una oas calogoiias (noslo caso, oo caoa piovncia),
pooonos usai a funao IuI]}:
> rendamedia <- tapply(rendimento, fprovincia, mean)
1
Lslos cooigos iopiosonlan: nin: Minho; lno: 1ias-os-Monlos; La: Loiia Alla; LL: Loiia Laixa;
Ll: Loiia Liloial; all: Alonlojo; alg: Algaivo; iiL: IiLalojo.
4 Facloios 20
quo calcula o vocloi oo nooias oo caoa una oas calogoiias:
> rendamedia
alg all La LL Ll nin iiL lno
0.00000 2.2000 .0000 44.0000 .00000 8.00000 7.88888 00.0000
A funao IuI]} aplica una funao, noslo caso a funao ncun]}, a caoa giupo oo
olononlos oo piinoiio aigunonlo (vocloi ionoinonlo), oofinioos polos nvois ou calogoiias oo
sogunoo aigunonlo (vocloi fpiovincia), cono so caoa giupo fosso un vocloi poi si so. O
iosullaoo o una osliuluia cujo conpiinonlo o o nnoio oo calogoiias oo facloi. Voja a ajuoa
associaoa a n|j) paia nais oolalhos.
Suponha agoia quo piolonoonos calculai os oiios-paoiao oa nooia oos ionoinonlos poi
piovncia. Iaia lal, nocossilanos oo oofinii una funao quo calculo o oiio-paoiao oa nooia oo
un vocloi nunoiico. Sonoo rur]} a funao quo calcula a vaiiancia anoslial, onlao a funao
paia calculai o oiio-paoiao oa nooia
2
pooo soi oofinioa pola oxpiossao
8
:
> erropadrao <- function(x)
{sqrt(var(x)/length(x))}
Agoia Lasla aplicai a funao ::unJ:nu) cono aigunonlo a funao IuI]}:
> errop <- tapply(rendimento, fprovincia, erropadrao)
Os valoios calculaoos sao:
> errop
alg all La LL Ll nin iiL lno
.244044 2.0780 4.00000 1.00000 2.78$018 4.100008 4.81010 0.00000
Cono oxoiccio, pooo calculai o inloivalo oo confiana a 0/ paia a nooia oos ionoinonlos
poi piovncia. Iaia lal, pooo usai a funao IuI]}, a funao IcngII]} paia calculai os
lananhos anosliais, o a funao gI]} paia oLloi os quanlis oas oisliiLuioos l oo Sluoonl
coiiosponoonlos.
A funao IuI]} pooo usai-so paia aplicai una funao a un vocloi inooxaoo poi
oifoionlos calogoiias sinullanoanonlo. Ioi oxonplo, pooo inloiossai oivioii a anoslia poi
oslaoo ou poi soxo. Os olononlos oo vocloi vao soi agiupaoos on suL-anoslias coiiosponoonlos
as oislinlas calogoiias ou nvois, o a funao o aplicaoa a caoa una ooslas suL-anoslias. O
iosullaoo o una vaiiavol inooxaoa oliquolaoa con os nvois oo caoa calogoiia.
A conLinaao oo un vocloi con un facloi a oliquola-lo o un oxonplo oo quo so oosigna
poi n:.n| .nJ.nJn J..j&n| (:njjJ n::nj"), pois possivolnonlo os lananhos oas suL-classos
sao oifoionlos. Quanoo oslos lananhos sao iguais, a inooxaao pooo fazoi-so inplicilanonlo o
nais oficionlononlo, cono so voia aoianlo.
2
Liio-paoiao oa nooia:
2
x
s
s
n
=
8
A oofiniao oo funoos soia lialaoo no Caplulo 10 [Dofina as suas piopiias funoos[, pag. 2
4 Facloios 21
4.3 Factores ordenados
Os nvois oos facloios sao guaioaoos poi oioon alfaLolica (lal cono no oxonplo anloiioi),
ou na oioon on quo so ospocificaian oxplicilanonlo na funao ]ucIor]}.
Ioi vozos ha una oioonaao naluial nos nvois oo un facloi, quo piolonoonos loi on conla
paia as analisos oslalslicas suLsoquonlos. A funao orucrcu]} poinilo ciiai oslo lipo oo
facloios o o sou uso o ioonlico ao oa funao ]ucIor]}. Os facloios ciiaoos pola funao ]ucIor]}
sao oosignaoos facloios noninais ou, nao havonoo iisco oo confusao, sinplosnonlo poi facloios;
os quo sao ciiaoos con a funao orucrcu]} sao oosignaoos facloios oioonaoos. Na naioi pailo
oas vozos, a nica oifoiona onlio anLos os lipos consislo on quo os oioonaoos sao inpiossos
inoicanoo a oioon oos nvois
> ordered(provincia)
[1[ lno Ll nin iiL iiL La all all nin alg iiL alg nin nin Ll lno Ll La all
[20[ alg nin iiL iiL all Ll LL iiL alg alg LL
Lovols: alg all La LL Ll nin iiL lno
Alon oisso, os conliaslos goiaoos polos oois lipos oo facloios ao ajuslai nooolos linoaios
sao oislinlos.
Vaiiavois inooxaoas. Maliizos 22
5 Variveis indexadas. Matrizes
5.1 Variveis indexadas
Una vaiiavol inooxaoa pooo consiooiai-so cono una colocao oo oaoos, inooxaoa poi
vaiios noicos. I poinilo ciiai o nanipulai vaiiavois inooxaoas on goial, o naliizos on
pailiculai.
Un vocloi oo oinonsoos o un vocloi oo nnoios inloiios. So o sou conpiinonlo o l, onlao
a vaiiavol inooxaoa coiiosponoonlo o l-oinonsional. Os olononlos oo vocloi oo oinonsoos
inoican os linilos supoiioios oos l noicos. Os linilos infoiioios valon sonpio 1 (un). Una
naliiz o una vaiiavol inooxaoa con l=2.
Un vocloi pooo liansfoina-so nuna vaiiavol inooxaoa quanoo so assigna un vocloi oo
oinonsoos ao aliiLulo J.n. Suponhanos, poi oxonplo, quo z o un vocloi oo 100 olononlos. A
assignaao:
> dim(z) <- c(3,5,100)
faz con quo I consiooio z cono una naliiz oo 3 5 100 olononlos.
Lxislon oulias funoos, cono nuIr1i]} o urru]}, quo poinilon assignaoos nais sinplos
o naluiais, cono so voia na Socao .4 [A funao aiiay()[, pag. 24.
Os olononlos oo vocloi passan a foinai pailo oa vaiiavol inooxaoa soguinoo a iogia oo
piioiioaoo naxina a coluna, lanLon usaoa na linguagon FOI1IAN, na qual o piinoiio noico
o o quo so novo nais iapioo o o llino o o nais lonlo
1
.
Ioi oxonplo, so so oofino a vaiiavol inooxaoa a, con vocloi oo oinonsoos c(8,4,2), osla
naliiz loia 3 4 2 24 = olononlos quo oLooocon a soquoncia a[1,1,1[, a[2,1,1[,...,a[2,4,2[,
a[8,4,2[.
5.2 Elementos de uma varivel indexada
Os olononlos inoiviouais oo una vaiiavol inooxaoa pooon soi iofoiioos con o nono oa
vaiiavol soguioo, onlio paionlosis ioclos, oos noicos iospoclivos sopaiaoos poi vigula.
Ln goial, pooo iofoiii-so qualquoi suL-socao oo una vaiiavol inooxaoa, nooianlo una
sucossao oo u:.-.nJ.., lonoo on conla quo so un olononlo oo u:-.nJ. n..u,
j&.n| n &.|..n: uJn n nn|.&J J n|u:. n:n u J.u .nJ..
1
Lxpoiinonlo con os soguinlos conanoos:
> z <- c(1:100)
Voja o vocloi z; oo soguioa, faa:
> dim(z) <- c(10,10)
o voja cono osla oiganizaoa a naliiz z.
Vaiiavois inooxaoas. Maliizos 28
Assin, no oxonplo oa vaiiavol inooxaoa anloiioi, oosignaoa con o nono a, a suL-socao
a[2, , [ o una vaiiavol con as oinonsoos 4 2 , con o vocloi oo oinonsoos c(4,2), conlonoo os
soguinlos olononlos oa vaiiavol a, na oioon inoicaoa:
c(a[2,1,1[, a[2,2,1[, a[2,8,1[, a[2,4,1[,
a[2,1,2[, a[2,2,2[, a[2,2,2[, a[2,4,2[
A vaiiavol a[ , , [, quo consislo on onilii looos os noicos, oquivalo a vaiiavol a conplola.
Iaia qualquoi vaiiavol inooxaoa, poi oxonplo z, o vocloi oo oinonsoos pooo iofoiii-so
oxplicilanonlo nooianlo a funao u1n]z} (pooo usai-so on qualquoi oos laoos oa assignaao).
So so ospocifica una vaiiavol inooxaoa con un so noico, sononlo sao ospocificaoos os
olononlos coiiosponoonlos ao vocloi oo oaoos, o o vocloi oo oinonsoos o ignoiaoo. No caso oo o
noico nao soi un vocloi, nas una vaiiavol inooxaoa, o lialanonlo o oifoionlo, cono so voia na
pioxina socao.
5.3 Uso de variveis indexadas como ndices
Una vaiiavol inooxaoa pooo ulilizai nao aponas un vocloi oo noicos, nas lanLon una
vaiiavol inooxaoa oo noicos, quoi paia assignai un vocloi a una colocao iiiogulai oo
olononlos oo una vaiiavol inooxaoa, quoi paia oxliaii una colocao iiiogulai oo olononlos paia
un vocloi.
Vojanos un oxonplo soLio una naliiz, a fin oo loinai nais claia a oxposiao. No caso oo
una naliiz, quo o una vaiiavol inooxaoa con oois noicos, pooo consliuii-so una naliiz oo
noicos consliluoa poi ouas colunas o vaiias linhas. As onliaoas oa naliiz oo noicos
ioonlifican as linhas o as colunas. Suponhanos quo x o una naliiz 4 5 o quo so oosojan
ofocluai as soguinlos laiofas:
- Lxliaii os olononlos x[1,8[, x[2,2[ o x[8,1[ paia un oLjoclo con osliuluia oo vocloi;
- SuLsliluii oslos olononlos oo x poi zoios.
Iaia lal, pooo usai-so una naliiz oo noicos oo 3 2 olononlos. A naliiz x pooo soi
goiaoa con o soguinlo conanoo:
> x <- array(1:20, dim=c(4,5)) # gera a matriz x
> x
[,1[ [,2[ [,8[ [,4[ [,[
[1,[ 1 0 18 17
[2,[ 2 0 10 14 1$
[8,[ 8 7 11 1 10
[4,[ 4 $ 12 10 20
> i <- array(c(1:3,3:1), dim=c(3,2)) # i uma matriz de ndices 3x2
> i
Vaiiavois inooxaoas. Maliizos 24
[,1[ [,2[
[1,[ 1 8
[2,[ 2 2
[8,[ 8 1
> x[i]
[1[ 0 0 8
> x[i] <- 0 # substitui os elementos por zeros
> x
[,1[ [,2[ [,8[ [,4[ [,[
[1,[ 1 0 18 17
[2,[ 2 0 10 14 1$
[8,[ 0 7 11 1 10
[4,[ 4 $ 12 10 20
Un oxonplo algo nais conploxo consislo on goiai a naliiz oo oosonho oo un
oolinoanonlo poi Llocos oofinioo poi oois facloios, h|uu (con b nvois) o n:.JnJ (con v
nvois), sonoo n o nnoio oo paicolas. Iooo fazoi-so oo soguinlo nooo (nola: L, v o n sao
valoios nunoiicos):
> xb <- matrix(0, n, b)
> xv <- matrix(0, n, v)
> ib <- cbind(1:n, bloco)
> iv <- cbind(1:n, variedade)
> xb[ib] <- 1
> xv[iv] <- 1
> x <- cbind(xb, xv)
A naliiz oo inciooncia N pooo consliuii-so con:
> N <- crossprod(xb, xv)
Conluoo, una nanoiia nais sinplos oo consliuii osla naliiz o usai a funao IuIIc]}:
> N <- table(bloco, variedade)
5.4 A funo array()
Una vaiiavol inooxaoa pooo consliuii-so nooificanoo o aliiLulo J.n oo un vocloi, ou
oiioclanonlo, ulilizanoo a funao aiiay() quo lon a foina:
> z <- array(vector_de_dados, vector_de_dimenses)
Ioi oxonplo, so o vocloi h conlon 24 (ou nonos) valoios nunoiicos, a oioon:
> z <- array(h, dim=c(3,4,2))
ainazona o vocloi h na vaiiavol inooxaoa z, oo oinonsao 3 4 2 . So o lananho oo vocloi h o
oxaclanonlo 24, o iosullaoo oo conanoo anloiioi coincioo con:
> dim(z) <- c(3,4,2)
Vaiiavois inooxaoas. Maliizos 2
Conluoo, so h lon nonos quo 24 olononlos, os sous valoios iopolon-so oosoo o piincpio
lanlas vozos quanlas as nocossaiias paia poifazoi os 24 olononlos oo z (voja-so Socao .4.1
[Iociclagon[, pag. 2). O caso oxliono, nuilo fioquonlo, coiiosponoo a un vocloi oo
conpiinonlo 1, cono no soguinlo oxonplo:
> z <- array(0, c(3,4,2))
on quo z o una vaiiavol inooxaoa cujos olononlos sao looos zoio.
A oxpiossao u1n]z} iofoio-so ao vocloi oo oinonsoos c(8,4,2), z|1:24| iofoio-so ao vocloi oo
oaoos sonolhanlo ao vocloi h, o z|| con o noico vazio (ou aponas z) iofoio-so a looo a vaiiavol
inooxaoa z.
As vaiiavois inooxaoas pooon usai-so on oxpiossoos aiilnolicas o o iosullaoo o una
vaiiavol inooxaoa foinaoa a pailii oas opoiaoos olononlo a olononlo oos vocloios suLjaconlos.
Os aliiLulos J.n oos opoianoo, iogia goial, oovon soi iguais o coincioiion con o vocloi oo
oinonsoos oo iosullaoo. Assin, so A, L o C sao vaiiavois inooxaoas sinilaios, onlao:
> D <- 2*A*B + C + 1
oiigina una vaiiavol inooxaoa sinilai, D, cujo vocloi oo oaoos o o iosullaoo oas opoiaoos
aiilnolicas inoicaoas soLio os vocloios oo oaoos suLjaconlos a A, L o C. As iogias oxaclas
coiiosponoonlos aos calculos on quo so nisluian vaiiavois inooxaoas o vocloios oovon soi
alonlanonlo osluoaoas.
5.4.1 Operaes com variveis indexadas e vectores. Reciclagem
As iogias piocisas quo afoclan as opoiaoos soLio olononlos on quo so nisluian vaiiavois
inooxaoas o vocloios iaianonlo sao oxplicilanonlo iofoionciaoas. Iola oxpoiioncia, consiooianos
quo as soguinlos fiavois as soguinlos iogias:
- A oxpiossao o analisaoa o avaliaoa oa osquoioa paia a oiioila.
- So a oxpiossao onvolvo un vocloi opoianoo nais cuilo quo os oonais, o oxlonoioo
iociclanoo os sous valoios alo igualai o conpiinonlo oos ioslanlos opoianoos.
- So so ha vaiiavois inooxaoas o vocloios nais cuilos, as vaiiavois inooxaoas oovon loi o
nosno aliiLulo J.n, ou ocoiioia un oiio.
- So oxislo un vocloi opoianoo nais oxlonso quo una vaiiavol inooxaoa ou naliiz
ocoiioia oiio.
- So oslao onvolvioas vaiiavois inooxaoas o nao ocoiio oiio, o iosullaoo oa oxpiossao
oiigina una vaiiavol inooxaoa con o nosno aliiLulo J.n oas quo inloivon na
opoiaao.
5.5 Produto externo de duas variveis indexadas
Una opoiaao funoanonlal con vaiiavois inooxaoas o o :uJ&u .:nu. So a o L sao ouas
vaiiavois inooxaoas nunoiicas, o sou piooulo oxloino o una vaiiavol inooxaoa cujo vocloi oo
oinonsao o a concalonaao oos coiiosponoonlos aos opoianoos, na oioon oa opoiaao, o cujo
Vaiiavois inooxaoas. Maliizos 20
vocloi oo oaoos o oLlioo nooianlo looos os possvois piooulos oos olononlos oos vocloios
suLjaconlos oo a o L. A opoiaao piooulo oxloiioi` o inoicaoa polo opoiaooi ;o;:
> ab <- a %o% b
ou onlao, con a funao ouIcr]}:
> ab <- outer(a, b, *)
Sojan a - c(1:) o L - c(0:10). Lnlao aL o:
[,1[ [,2[ [,8[ [,4[ [,[
[1,[ 0 7 $ 0 10
[2,[ 12 14 10 1$ 20
[8,[ 1$ 21 24 27 80
[4,[ 24 2$ 82 80 40
[,[ 80 8 40 4 0
Usanoo a funao ouloi(), a opoiaao nulliplicaao pooo soi suLsliluoa poi qualquoi oulia
opoiaao aiilnolica ou funao oo ouas vaiiavois. Ioi oxonplo, paia calculai a funao
2
, cos( ) / 1 f x v v x = + soLio a iolcula foinaoa poi looos os ponlos quo so oLlon polas
oioonaoas o aLcissas oofinioas polos olononlos oos vocloios x o y iospoclivanonlo, pooo oofinii-
so a soguinlo funao (a oofiniao oo funoos on I soia aLoioaoa no Caplulo 10 [Dofina as suas
piopiias funoos[, pag. 8) :
> f <- function(x,y)
{cos(y)/(1+x^2)}
> z <- outer(x,y,f)
Ln pailiculai, o piooulo oxloino oo oois vocloios o una vaiiavol inooxaoa con oois noicos
(islo o, una naliiz oo oioon 1, polo nonos). Dovo loi-so on conla quo o piooulo oxloino nao o
conulalivo.
Exemplo: Distribuio dos determinantes de uma matriz de dgitos 2 2
Un oxonplo poilinonlo oa ulilizaao oa funao ouloi() o o calculo oo ooloininanlo oo una
naliiz 2 2 , [a, L; c, o[, on quo caoa un oos sous olononlos o un nnoio naluial onlio 0 o 0
(islo o, un ogilo). O pioLlona consislo on calculai os ooloininanlos, ad bc , o o looas as
naliizos ooslo lipo, o iopiosonlai giaficanonlo a sua oisliiLuiao, suponoo quo caoa ogilo o
soloccionaoa aloaloiianonlo oo una oisliiLuiao unifoino.
Iaia lal, pooo ulilizai a funao ouloi() ouas vozos:
> d <- outer(0:9,0:9)
> fr <- table(outer(d, d, -))
> plot(as.numeric(names(fr)), fr, type=h,
xlab=Determinante, ylab=Frequncia)
Nolo-so cono so ha foiaoo cono nunoiico o aliiLulo nnn. oa laLola oo fioquoncias, oo
nooo a iocupoiai a anpliluoo oos valoios oos ooloininanlos. A foina apaionlononlo oLvia"
Vaiiavois inooxaoas. Maliizos 27
oo iosolvoi oslo pioLlona con o uso oo ciclos ]or, quo so oisculiiao no Caplulo 0 [Ciclos.
oxpiossoos conoicionais[, pag. 1, o lao inoficaz quo so loina inpialicavol.
Ao oLsoivai o iosullaoo, o lalvoz suipioonoonlo cono apioxinaoanonlo 1 on caoa 20
ooslas naliizos o singulai.
5.6 Transposta generalizada de uma varivel indexada
A funao ucrn]u, crn} pooo usai-so paia poinulai a vaiiavol inooxaoa a. O
aigunonlo crn oovo soi una poinulaao oos valoios inloiios |1, ..., l, sonoo l o nnoio oo
noicos oo a. O iosullaoo o una vaiiavol inooxaoa oo nosno lananho quo a, on quo a oinonsao
quo na vaiiavol oiiginal oia crn]]] passa agoia a soi a oinonsao j. So A o una naliiz (no
sonlioo nalonalico), onlao:
> B <- aperm(A, c(2,1)
oiigina a naliiz L, quo o a naliiz liansposla oo A. No caso oo naliizos (no sonlioo
nalonalico), o nais facil usai a funao I]}, o o conanoo o sinplosnonlo B <- t(A).
5.7 Operaes com matrizes
Cono ja anloiioinonlo so oofiniu, una naliiz o sinplosnonlo una vaiiavol inooxaoa con
oois noicos. Faco a sua inpoilancia, nocossilan soi lialaoas nuna socao a pailo. I oispoo oo
nuilos opoiaooios o funoos ospocficas paia naliizos, Ioi oxonplo, acaLanos oo iofoiii quo
I]i} o a naliiz liansposla oo x. As funoos nrou]i} o ncoI]i} inoican o nnoio oo linhas o
oo colunas oo una naliiz x.
5.7.1 Produto matricial. Matriz inversa. Resoluo de sistemas lineares
O opoiaooi ;'; ioaliza o piooulo naliicial. Una naliiz 1 n ou 1 n pooo soi usaoa,
caso soja nocossaiio, cono un vocloi n-oinonsional. Analoganonlo, I pooo usai
aulonalicanonlo un vocloi nuna opoiaao naliicial, convoilonoo-o paia una naliiz-fila ou
naliiz-coluna, quanoo lal soja possvol (poi vozos, osla convoisao pooo iosullai anLgua, cono
so voia).
So, poi oxonplo, A o L sao naliizos quaoiaoas con o nosno lananho, onlao:
> A * B
oa cono iosullaoo una naliiz con o piooulo, olononlo a olononlo, oas ouas naliizos,
onquanlo quo:
> A %*% B
oiigina o piooulo naliicial oo A poi L. So x o un vocloi, onlao:
> x %*% A %*% x
ciia una foina quaoialica
2
.
2
A oxpiossao x /*/ o anLgua, pois lanlo pooo significai x x cono xx , on quo x o un
vocloi coluna. Noslo lipo oo casos, a inloipiolaao coiiosponoo a naliiz oo nonoi lananho,
Vaiiavois inooxaoas. Maliizos 2$
A funao crossrou]} calcula o piooulo ciuzaoo oo ouas naliizos, islo o,
crossprod(X,y) o o nosno quo t(X) %*% y, nas a funao o nais oficionlo. So so onilo o
sogunoo aigunonlo oa funao crossrou]}, o assunioo igual ao piinoiio.
O iosullaoo oa funao u1ug]r} ooponoo oo aigunonlo. So v o un vocloi, u1ug]r} oa una
naliiz oiagonal, on quo os olononlos oa oiagonal piincipal sao os olononlos oo vocloi v. Ioi
oulio laoo, so M o una naliiz, u1ug]1} oa un vocloi con os olononlos oa oiagonal piincipal
oo M (osla o convonao usaoa polo piogiana MA1LAL paia a funao u1ug]}). Ioi llino, so l
o un nico valoi nunoiico naluial, u1ug]I} oiigina a naliiz ioonlioaoo k k .
5.7.2 Autovalores e autovectores
A funao c1gcn]Sn} calcula os valoios piopiios ou aulovaloios, o os vocloios piopiios ou
aulovocloios, oo una naliiz sinoliica Sn. O iosullaoo o una lisla con ouas conpononlos, cujo
nono o iospoclivanonlo valuos o voclois. A assignaao:
> ev <- eigen(Sm)
ciia a lisla , on quo :n| so iofoio ao vocloi oo valoios piopiios o : o a naliiz con os
vocloios piopiios. So so nocossilanos oo calculai os aulovaloios, pooo fazoi-so:
> autoval <- eigen(Sm)$values
o auloval conloia o vocloi oo valoios piopiios, sonoo a sogunoa conpononlo ooscailaoa. So a
oxpiossao:
> eigen(Sm)
o usaoa cono conanoo, as ouas conpononlos sao visualizaoas con os iospoclivos nonos.
5.7.3 Decomposio em valores singulares. Determinantes
A funao sru]} aonilo cono aigunonlo una naliiz qualquoi, M, o calcula a sua
ooconposiao on valoios singulaios, quo consislo on oLloi lios naliizos U, D o V, lais quo a
piinoiia o una naliiz oo colunas oilogonais con o nosno ospao oo colunas quo M, a sogunoa
o una naliiz oiagonal oo nnoios nao nogalivos o a loicoiia o una coluna oo colunas
oilogonais con o nosno ospao oo linhas quo M, lais quo M=U/*/D/*/l(V). D o
apiosonlaoo soL a foina oo vocloi foinaoo polos olononlos oiagonais. O iosullaoo oo sru]} o
una lisla con lios conpononlos, cujos nonos sao o, u o v, coiiosponoonlos as naliizos
oosciilas.
So M o una naliiz quaoiaoa, o facil voi quo:
> AbsDetM <- prod(svd(M)$d)
calcula o valoi aLsolulo oo ooloininanlo oo M. So piocisa ooslo calculo fioquonlononlo pooo
oofini-lo cono una nova funao oo I:
polo quo o iosullaoo o noslo caso o oscalai x x . A naliiz xx pooo calculai-so fazonoo
cLino(x) /*/ x ou x /*/ iLino(x), pois o iosullaoo oo iLino() ou oo cLino() o sonpio una
naliiz.
Vaiiavois inooxaoas. Maliizos 20
> AbsDet <- function(M)
|pioo(svo(M)$o)
con a qual poooia usai ALsDol() cono qualquoi oulia funao. Doixa-so cono oxoiccio, liivial
onLoia lil, o calculo oo una funao, Ir]}, quo calcula o liao oo una naliiz quaoiaoa. 1onha
on conla quo nao nocossila ioalizai nonhuna iloiaao; osluoo alonlanonlo o cooigo oa funao
anloiioi.
5.7.4 Ajustamento por mnimos quadrados. Decomposio QR
A funao Is]1I]} calcula una lisla quo conlon os iosullaoos oo un ajuslanonlo polo
nolooo oos nninos quaoiaoos. Una assignaao oa foina:
> minquad <- lsfit(X, y)
guaioa os iosullaoos oo n]&.nnnu u: n.n.nu. j&nJ:nJu. oo un vocloi oo oLsoivaoos, y, o
una naliiz oo oosonho, X. Voja a ajuoa soLio osla funao paia nais oolalhos, Lon cono paia a
funao Is.u1ug]} suLsoquonlo quo, onlio oulias coisas, poinilo oiagnoslicai a iogiossao. Nolo
quo o loino inooponoonlo o aulonalicanonlo incluoo, nao sonoo nocossaiio inclu-lo
oxplicilanonlo cono una coluna oo X.
Oulia funao oslioilanonlo iolacionaoa o a funao gr]} o suas sinilaios. Consiooio as
soguinlos assignaoos:
> xplus <- qr(x)
> b <- qr.coef(xplus, y)
> fit <- qr.fitted(xplus, y)
> res <- qr.resid(xplus, y)
quo calculan a piojocao oilogonal oo y soLio x,, guaioanoo os iosullaoos on fil, a piojocao
soLio o conplononlo oilogonal on ios o o vocloi oo cooficionlos paia a piojocao on L (islo o, L
o ossoncialnonlo o iosullaoo oo opoiaooi Laclslash" oo MA1LAL).
Nao o nocossaiio assunii quo x soja oo oioon conplola. As ioounoancias sao ooloclaoas o
logo ionovioas .
Lsla oia a nolooologia anliga, oo Laixo nvol`, oo ofocluai o ajuslanonlo polo nolooo oos
nninos quaoiaoos. LnLoia conlinuo a soi lil on ooloininaoos conloxlos, o aclualnonlo
suLsliluoa polas poloncialioaoos oos nooolos oslalslicos, cono so voia no Caplulo 11 [
Mooolos oslalslicos on I[, pag. 04.
5.8 Parties de uma matriz. Funes cbind() e rbind()
Cono ja anloiioinonlo vislo oo nooo infoinal, as naliizos pooon soi ioconsliuoas pola
junao oo vocloios ou oulias naliizos. Gonoiicanonlo, cI1nu]} faz a uniao hoiizonlal (nooo
coluna) o rI1nu]} faz a uniao voilical (nooo linha) oo naliizos.
Na assignaao:
> x <- cbind(arg_1, arg_2, arg_3, ...)
Vaiiavois inooxaoas. Maliizos 80
os aigunonlos oo cLino() oovon soi vocloios (con qualquoi conpiinonlo) ou naliizos con o
nosno nnoio oo linhas. O iosullaoo o una naliiz quo iosulla oa concalonaao laloial oos
aigunonlos aig1, aig2, ... aunonlanoo o nnoio oo colunas.
So alguns oos aigunonlos oo cI1nu]} sao vocloios, oslos nao pooon soi nais oxlonsos quo o
lananho oas colunas oas naliizos onvolvioas; so os vocloios sao oo nonoi conpiinonlo, sao
oslonoioos ciclicanonlo alo igualaion o conpiinonlo oas colunas oas naliizos (ou o
conpiinonlo oo vocloi nais oxlonso, so nao oxislo nonhuna naliiz).
A funao rI1nu]} faz a coiiosponoonlo concalonaao voilical. Noslo caso, qualquoi vocloi
ospocificaoo on aigunonlo, piovavolnonlo ciclicanonlo oslonoioo, o lonaoo cono vocloi fila
(ou linha).
Suponhanos quo X1 o X2 lon o nosno nnoio oo linhas. Iaia conLinai oslas naliizos
hoiizonlalnonlo, nuna naliiz X, cuja piinoiia coluna so piolonoo quo soja oo 1`s, faz-so o
conanoo:
> X <- cbind(1, X1, X2)
O iosullaoo oo cI1nu]} ou rI1nu]} lon sonpio a osliuluia oo naliiz. Lslas funoos sao
assin o nooo nais oxpooilo oo lialai o vocloi x cono naliiz coluna ou naliiz linha,
iospoclivanonlo.
5.9 A funo concatenao c() com matrizes
Lnquanlo quo as funoos cI1nu]} o rI1nu]} sao funoos oo concalonaao quo iospoilan o
aliiLulo J.n, a funao c]} nao o iospoila, anlos polo conliaiio ioliia os aliiLulos J.n ou
J.nnnn. aos oLjoclos nunoiicos, o quo poi coilo, o lil on ooloininaoas siluaoos.
A foina u..n| oo liansfoinai una vaiiavol inooxaoa no sou vocloi suLjaconlo o ulilizai a
funao us.rccIor]}:
> vec <- as.vector(X)
O nosno iosullaoo o oLlioo ulilizanoo a funao c]}, oovioo ao ofoilo colaloial noncionaoo:
> vec <-c(X)
Lxislon unas oifoionas suLlis onlio as ouas alloinalivas, poion a opao onlio anLas o
funoanonlalnonlo una quoslao oo oslilo (piofoioncialnonlo uso a nanoiia foinal).
5.10 Tabelas de frequncias a partir de factores
Vinos quo un facloi oofino una pailiao poi calogoiias, ou una laLola oo onliaoa sinplos.
Do nooo sonolhanlo, oois facloios oofinon una laLola oo oupla onliaoa, o assin
sucossivanonlo. A funao IuIIc]} poinilo calculai laLolas oo fioquoncias a pailii oo facloios oo
igual conpiinonlo. So oxislon l calogoiias, o iosullaoo soia una vaiiavol l-inooxaoa conlonoo
as fioquoncias oo caoa calogoiia.
Vaiiavois inooxaoas. Maliizos 81
Suponhanos, poi oxonplo, quo fpiovincia o un facloi oo calogoiias quo sao as iniciais oas
piovncias
8
, associaoo a un vocloi oo oaoos. A assignaao:
> freqprov <- table(fprovincia)
ciia on fioqpiov una laLola oo fioquoncias oo caoa piovncia na anoslia. As fioquoncia sao
oioonaoas o oliquolaoas polos nvois ou calogoiias oo facloi. Lsla oioon o oquivalonlo, o nais
facil quo:
> freqprov <- tapply(fprovincia, fprovincia, comprimento)
Suponha agoia quo fionoa o un facloi quo classifica ou agiupa os ionoinonlos poi classos
pio-oofinioas, poi oxonplo con a funao cuI]}:
> factor(cut(rendimento, breaks=35+10*(0:7))) -> frenda
Lnlao, paia calculai una laLola oo fioquoncias oo oupla onliaoa:
> table(frenda, fprovincia)
fpiovincia
fionoa alg all La LL Ll nin iiL lno
(8,4[ 1 0 0 1 0 1 1 0
(4,[ 1 8 1 1 2 1 1 0
(,0[ 2 1 1 0 2 8 8 2
(0,7[ 1 0 0 0 0 0 1 0
A oxlonsao paia laLolas oo fioquoncia oo nlliplas onliaoas o inooiala.
8
Iofoiino-nos ao oxonplo usaoo na Socao 4.1 o 4.2, pag.10.
0 Lislas o folhas oo oaoos 82
6 Listas e folhas de dados
6.1 Listas
Una |..n on I o un oLjoclo consliluoo poi una colocao oioonaoa oo oLjoclos,
conhocioos cono as suas ununn..
Nao o nocossaiio quo os oLjoclos sojan oo nosno nooo ou lipo; assin, una lisla pooo soi
consliluoa, poi oxonplo, poi un vocloi nunoiico, un valoi logico, una naliiz, un vocloi
conploxo, una vaiiavol inooxaoa alfanunoiica, o una funao. Do soguioa apiosonla-so un
oxonplo oo una lisla:
> lst <- list(nome=Jos, esposa=Maria,
n.filhos=3, idade.filhos=c(4,7,9))
O aspoclo oa visualizaao oosla lisla o o soguinlo:
> lst
$nono
[1[ "Joso"
$osposa
[1[ "Maiia"
$n.filhos
[1[ 8
$ioaoo.filhos
[1[ 4 7 0
As conpononlos oslao sonpio n&n:nJn. o pooon soi ioonlificaoas polo iospoclivo nnoio.
Na lisla lsl anloiioi, con 4 conpononlos, caoa una oolas pooo soi iofoiioo poi lsl[[1[[, lsl[[2[[,
lsl[[8[[, lsl[[4[[. Cono a llina conpononlo lsl$ioaoo.filhos ou lsl[[4[[ o un vocloi, a oxpiossao
lsl[[4[[[1[ ioonlifica o valoi 4 (ioaoo oo piinoiio filho):
> lst$idade.filhos
[1[ 4 7 0
lsl[[4[[
[1[ 4 7 0
lsl[[4[[[1[
[1[ 4
A funao IcngII]} aplicaoa a una lisla oovolvo o nnoio oo conpononlos oossa lisla.
As conpononlos oo una lisla pooon loi nun, caso on quo pooon soi ioonlificaoas poi
osso nono, con una oxpiossao oo lipo:
> nome_da_lista$nome_da_componente
0 Lislas o folhas oo oaoos 88
Lsla convonao poinilo a oLlonao oo una conpononlo son o onpiogo oo iospoclivo
nnoio. No oxonplo anloiioi:
lsf$nomo coincioo con lsf||1||, cujo conlooo o Joso",
lsf$ososa coincioo con lsf||2||, cujo conlooo o Maiia",
lsf$n.filhos coincioo con lsf||8||, cujo conlooo o 8,
lsf$idado.filhos coincioo con lsf||4||, cujo conlooo o o vocloi c(4, 7, 0),
lsf$idado.filhos|1| o o nosno lsf||4|||1| o lon o valoi 4.
1anLon o possvol ulilizai o nono oas conpononlos onlio aspas, cono poi oxonplo
lsf||"nomo||, quo coincioo con lsf$nomo. Lsla opao o nuilo lil no caso on quo o nono oas
conpononlos so guaioa noulia vaiiavol, lal cono:
> x <- "nome" ; lst[[x]]
[1[ "Joso"
L nuilo inpoilanlo oislinguii onlio lsl[[1[[ o lsl[1[. O opoiaooi || ... ||` o usaoo paia
soloccionai una so conpononlo oo una lisla, onquanlo quo | ... |` o o opoiaooi gonoiico paia
vaiiavois inooxaoas. Islo o, lsl[[4[[ o o quailo oLjoclo oa lisla lsl, o so o una lisla con nonos, o
nono nao osla incluoo. Ioi oulio laoo, lsl[4[ o una suL-lisla oa lisla lsl, consliluoa pola sua
quaila conpononlo; so a lisla lon nono, oslo passa lanLon paia a suL-lisla:
> lst[[4]]
[1[ 4 7 0
> lst[4]
$ioaoo.filhos
[1[ 4 7 0
Os nonos oas conpononlos pooon aLioviai-so alo ao nnino oo caiacloios nocossaiios paia
ioonlifica-las oo nooo oxaclo o nico, son possiLilioaoo oo confusao. Assin:
> lista <- list(coeficientes=c(1.3, 4), covariancia=0.87)
lisfa$cooficionfos pooo ospocificai-so aponas poi lisfa$coo, Lon cono lisfa$covariancia pooo
iosunii-so a lisfa$cov. O vocloi oo nonos o un aliiLulo oa lisla, o cono os ioslanlos aliiLulos,
pooo soi nanipulaoo con a funao nuncs]}, quo lanLon pooo soi usaoo soLio oulios oLjoclos:
> names(lst) <- c("NOME","ESPOSA","FILHOS","IDADEF")
> lst
$NOML
[1[ "Joso"
$LSIOSA
[1[ "Maiia"
$FILHOS
[1[ 8
0 Lislas o folhas oo oaoos 84
$IDADLF
[1[ 4 7 0
6.2 Construo e modificao de listas
A funao I1sI]} poinilo ciiai lislas a pailii oo oLjoclos ja oxislonlos. Una assignaao oa
foina :
> lista <- list(nome_1=objecto_1, ... , nome_n=objecto_n)
guaioa on lisla una lisla oo n conpononlos quo sao oLjoclo1, ... , oLjoclon, aos quais sao
aliiLuoos os nonos nono1, ... , nonon, quo pooon soi quaisquoi. So os nonos sao onilioos,
as conpononlos aponas fican nunoiaoas. Os oLjoclos oxislonlos usaoos paia consliuii una lisla
sao copiaoos paia a nova lisla o os oiiginais nao sao nooificaoos.
As lislas, lal cono looos os oLjoclos inooxaoos, pooon anpliai-so ospocificanoo
conpononlos aoicionais. Ioi oxonplo:
> lst[[5]] <- list(nacionalidade=Portuguesa)
aciosconla un oLjoclo chanaoo nacionalioaoo` a lisla lsl alias usaoa.
6.2.1 Concatenao de listas
So so ospocifican lislas cono aigunonlos oa funao c]}, o iosullaoo o un oLjoclo cujo
nooo o lisl (islo o, o una lisla) cujas conpononlos sao looas as lislas inoicaoas on aigunonlo,
unioas soquoncialnonlo.
> lista.ABC <- c(lista.A, lista.B, lista.C)
Iocoioo quo quanoo os aigunonlos sao vocloios, a funao c]} uno-os a looos nun nico
vocloi. Noslo caso, os ioslanlos aliiLulos, lal cono J.n, sao poioioos.
6.3 Folhas de dados
Una u||n J JnJu.
1
o una lisla oo classo Jnn.:nn". Ha algunas iosliioos soLio quo
lislas pooon poiloncoi a osla classo, nonoaoanonlo:
- As conpononlos oovon soi vocloios (nunoiicos, alfanunoiicos ou logicos), facloios,
naliizos nunoiicas, lislas ou oulias folhas oo oaoos.
- As naliizos, lislas o folhas oo oaoos conliiLuon paia a nova folha oo oaoos con lanlas
novas vaiiavois quanlas as colunas, olononlos ou vaiiavois quo conlonhan,
iospoclivanonlo.
- Os vocloios nunoiicos o facloios sao incluoos son quaisquoi nooificaoos; vocloios nao
nunoiicos (alfanunoiicos ou logicos) sao liansfoinaoos on facloios, cujas calogoiias sao
valoios nicos conlioos no vocloi.
1
1iaouao livio oa oxpiossao oala fiano`, poi analogia con una folha oo calculo.
0 Lislas o folhas oo oaoos 8
- Os vocloios quo consliluon a folha oo oaoos oovon loi o nosno conpiinonlo, o as
naliizos oovon loi o nosno lananho on linha.
Una folha oo oaoos pooo soi oncaiaoa, on nuilos sonlioos, cono una naliiz cujas colunas
pooon loi nooos o aliiLulos oislinlos. Iooon visualizai-so on foina oo naliiz, o as suas linhas
o colunas pooon soloccionai-so usanoo as convonoos oas vaiiavois inooxaoas.
6.3.1 Criao de uma folha de dados
Os oLjoclos quo salisfaan as iosliioos inposlas as colunas pooon agiogai-so nuna folha
oo oaoos usanoo a funao uuIu.]runc]}:
> contab <- data.frame(domicilio=fprovincia,
rendimento=renda, classe=frenda)
Una lisla cujas conpononlos cunpian as iosliioos inposlas pooo soi liansfoinaoa on
folha oo oaoos con a funao us.uuIu.]runc]}.
A nanoiia nais facil oo consliuii una folha oo oaoos o usai a funao rcuu.IuIIc]} paia
inpoilai un fichoiio oxloino a I. Lslo assunlo o aLoioaoo no Caplulo 7 [Inpoilaao oo
fichoiios[, pag. 8$.
6.3.2 Funes attach() e detach()
A nolaao $ usaoa con lislas, cono opoi oxonplo confab$domicilio, non sonpio o a nais
convonionlo. Ioi vozos o vanlajoso poooi iofoiii caoa conpononlo oo una lisla ou folha oo
oaoos cono so so lialasso oo una vaiiavol, con o nono quo lon, son loi nocossioaoo oo
oxplicilanonlo inoicai o nono oa lisla ou folha oo oaoos.
Iaia lal, usa-so a funao uIIucI]}, lonoo cono aigunonlo o nono oo una lisla ou oo una
folha oo oaoos, oo nooo a poinilii acoooi oiioclanonlo as suas conpononlos son oxplicilai o
nono oa lisla. Suponhanos quo |n.||n. o una folha oo oaoos, con lios colunas (ou vaiiavois),
oosignaoas poi |n.||n.:&, |n.||n.: o |n.||n.:. O conanoo:
> attach(lentilhas)
conocla os nonos oas vaiiavois ao caninho oo Lusca, oo nooo quo, caso nao haja oulios
oLjoclos con os nosno nono, as vaiiavois conlioas na folha oo oaoos passan a poooi iofoiii-so
con os nonos u, v o w. Lnliolanlo, so fizoi o conanoo:
> u <- v + w
nao so suLslilui a vaiiavol u oa folha oo oaoos pola sona oas oulias ouas vaiiavois; o ciiaoa
una nova vaiiavol, con o nono u, con piioiioaoo soLio a vaiiavol lonlilhas$u no caninho oo
Lusca. So o piolonoioo fosso nosno aliiLuii a sona a vaiiavol u oa folha oo oaoos, oovoi-so-ia
fazoi:
> lentilhas$u <- v + w
Ioion, osla vaiiavol iocon-assignaoa nao o visvol onquanlo nao so piocoooi a liLoilaao o
posloiioi ligaao oas vaiiavois oa folha ao caninho oo Lusca.
Iaia oosagiogai una folha oo oaoos oo caninho oo Lusca, faz-so o conanoo:
0 Lislas o folhas oo oaoos 80
> detach(lentilhas)
Una voz ioalizaoa osla funao, ooixaiao oo oxislii as vaiiavois u, v, w cono lal, onLoia
conlinuon a oxislii o oslai oisponvois cono conpononlos oa folha oo oaoos lonlilhas. Cono
aigunonlos oas funoos uIIucI]} o ucIucI]} pooon inoicai-so, nao os nonos oas lislas, nas a
oioon quo ocupan no caninho oo Lusca, onLoia nonos claio o pioponso a oiios, oo nooo quo
so aconsolha o uso oos nonos.
Nofa: A aclual voisao oo I poinilo oofinii alo 20 ilons no caninho oo Lusca,
polo quo oovo ovilai ligai un oLjoclo nais quo una voz. Dosliguo os oLjoclos oo
caninho oo Lusca sonpio quo ja nao nocossilai oo loi as suas conpononlos
oiioclanonlo acossvois. Nao o possvol assignai valoios a lislas ou folhas oo
oaoos quo oslojan ligaoos con uIIucI]} ao caninho oo Lusca (sao, oo coila
foina, oslalicas).
6.3.3 Trabalhar com folhas de dados
Una nolooologia quo poinilo lialai oifoionlos pioLlonas ulilizanoo o nosno oiiocloiio oo
liaLalho o a soguinlo:
- Iouna looas as vaiiavois oo un nosno pioLlona nuna nosna folha oo oaoos, o oo-lho
un nono sugoslivo.
- Iaia lialai un ooloininaoo pioLlona conoclo, con a funao uIIucI]}, a folha oo
oaoos coiiosponoonlo (quo fica con piioiioaoo 2 no caninho oo Luscas) o ulilizo o
oiiocloiio oo liaLalho paia as vaiiavois lonpoiaiias (cuja piioiioaoo oo Lusca soia 1).
- Anlos oo loininai una analiso, assigno as vaiiavois lonpoiaiias quo oosoja consoivai a
folha oo oaoos, ulilizanoo a foina u||nJnJu.:nunn:.n|, o oosconoclo a folha oo
oaoos con ucIucI]}.
- Iaia finalizai, olinino, con o conanoo rn]}, oo oiiocloiio oo liaLalho as vaiiavois
lonpoiaiias quo nao oosojo consoivai, oo nooo a nanlo-lo o nais linpo o oosocupaoo
possvol.
Doslo nooo poooia ulilizai o nosno oiiocloiio paia analisai oifoionlos pioLlonas, pooonoo
aconlocoi, son poiigo oo confusao, quo haja vaiiavois con os nosnos nonos on oivoisas folhas
oo oaoos.
6.3.4 Coneco de objectos variados
A funao uIIucI]} o una funao gonoiica quo poinilo ligai ao caninho oo Lusca nao
aponas oiiocloiios o folhas oo oaoos, nas lanLon oulios lipos oo oLjoclos, lais cono lislas:
> attach(nome_lista)
Iosloiioinonlo poooia oosligai os oLjoclos con a funao ucIucI]}, ulilizanoo cono
aigunonlo o iospoclivo nnoio oo posiao no caninho oo Lusca, ou piofoiivolnonlo o nono oo
oLjoclo a oosligai.
0 Lislas o folhas oo oaoos 87
6.3.5 Gesto do caminho de busca
A funao scurcI]} inoica a liajocloiia oo Lusca aclual, sonoo a nolhoi nanoiia oo saLoi
quais sao as folhas oo oaoos, lislas ou LiLliolocas quo foian conoclaoas ou oosconoclaoas. So
nao ioalizou nonhuna conocao ou oosconocao, o sou valoi o:
> search()
[1[ ".GloLalLnv" "Auloloaos" "paclago:Laso"
onoo .GloLalLnv", quo ocupa a posiao 1 oo caninho oo Lusca, coiiosponoo ao ospao oo
liaLalho
2
.
Una voz ligaoa a folha oo oaoos lonlilhas loianos:
> search()
[1[ ".GloLalLnv" "lonlilhas" "Auloloaos" "paclago:Laso"
> ls(2)
[1[ "u" "v" "w"
o, cono so vo, pooo usai-so ls(valoi) paia saLoi quais as vaiiavois ligaoas na posiao valoi oo
caninho oo Lusca (no caso, 2 coiiosponoo a folha oo oaoos lonlilhas).
Finalnonlo, oosconocla-so a ligaao oo Lusca a folha oo oaoos, o confiina-so quo foi
ionovioa oo caninho oo Lusca:
> detach(lentilhas)
> search()
[1[ ".GloLalLnv" "Auloloaos" "paclago:Laso"
2
Consullo a ajuoa soLio auloloao paia a oosciiao ooslo loino.
7 Inpoilaao oo fichoiios oxloinos 8$
7 Importao de ficheiros externos
So a quanlioaoo oo oaoos a inlioouzii o oxlonsa, o nais pialico piocoooi a inpoilaao
ooslos oaoos a pailii oo un fichoiio oxloino, on voz oo os inlioouzii oiioclanonlo a pailii oo
loclaoo. Ln I, as capacioaoos oo loiluia oo fichoiios oxloinos sao sinplos, o os ioquisilos a quo
oslos oovon oLooocoi sao iosliilas o infloxvois. Iiossupoo-so quo o ulilizaooi osla haLililaoo a
ooilai o nooificai os aiquivos oo oaoos con oulias aplicaoos, lais cono ooiloios oo loxlo
1
o
folhas oo calculo, oo nooo a ajusla-los as oxigoncias oo I. Goialnonlo oslas laiofas sao
oxlionanonlo sinplos.
A funao rcuu.]u]]} pooo usai-so paia loi aiquivos con canpos oo laiguia fixa nao
oolinilaoos poi sopaiaooi (osla funao uliliza una iolina poil quo convoilo o fichoiio nun cuja
osliuluia osla aoaplaoa a loiluia con rcuu.IuIIc]}). A funao counI.]1cIus]} conla o nnoio
oo canpos poi linha oo un fichoiio con canpos oolinilaoos. Lslas ouas funoos pooon iosolvoi
alguns pioLlonas oo inpoilaao oo fichoiios, nas oo un nooo goial o nais aconsolhavol ajuslai
o fichoiio oo oaoos aos ioquisilos oo I anlos oo conoai a sossao oo liaLalho.
So os oaoos lioos vao soi guaioaoos on vaiiavois nuna folha oo oaoos, cono so iocononoa,
pooon loi-so os oaoos oiioclanonlo con a funao rcuu.IuIIc]}. Dispoo-so lanLon oa funao
scun]}, nais gonoiica, o quo pooo soi usaoa oiioclanonlo.
7.1 A funo read.table()
Iaia loi na nlogia una folha oo oaoos oiioclanonlo, o fichoiio oxloino oovo iounii os
ioquisilos nocossaiios:
- A piinoiia linha oo aiquivo oovo conloi os nonos oos canpos ou vaiiavois.
- Ln caoa una oas linhas soguinlos, o piinoiio olononlo o a oliquola oa linha, soguioo
oos valoios oas ioslanlos vaiiavois.
Lsla oisposiao piossupoo quo a piinoiia linha lon nonos un oaoo quo as ioslanlos (a
coluna oas oliquolas oas linhas nao lon nono). Apiosonla-so oo soguioa un oxonplo oas
piinoiias linhas oo un fichoiio (casas.oal, suposlanonlo localizaoo no oiiocloiio oo liaLalho)
aoaplaoo a sua inpoilaao con a funao rcuu.IuIIc]}.
Lsliuluia oo fichoiio oxloino con nonos oas vaiiavois o oliquolas oo linha
Iioco Supoificio Aioa Divisoos Anos Calof
01 2.00 111.0 $80 0.2 nao
02 4.7 12$.0 710 7. nao
08 7.0 101.0 1000 4.2 nao
04 7.0 181.0 000 0 $.$ nao
0 0.7 08.0 000 1.0 sin
... ... ... ... ... ... ...
1
Ln anLionlo UNIX pooo usai as aplicaoos soo ou awl.
7 Inpoilaao oo fichoiios oxloinos 80
Ioi oofoilo, os canpos nunoiicos (oxcoplo as oliquolas oo linha) sao lioos cono vaiiavois
nunoiicas, o canpos nao-nunoiicos (lal cono Calof) sao lioos cono facloios. Lsla iogia pooo
alloiai-so, caso soja nocossaiio.
A funao rcuu.IuIIc]} inpoila oslo aiquivo oiioclanonlo paia una folha oo oaoos:
> PrecoCasas <- read.table(casas.dat)
Fioquonlononlo onilon-so as oliquolas oo linha no fichoiio oxloino, o usan-so as oliquolas
quo, poi oofoilo, I assuno. Noslo caso, o aiquivo oo oaoos oovo loi a soguinlo osliuluia:
Lsliuluia oo fichoiio oxloino con nonos oas vaiiavois o son oliquolas oo linha
Iioco Supoificio Aioa Divisoos Anos Calof
2.00 111.0 $80 0.2 nao
4.7 12$.0 710 7. nao
7.0 101.0 1000 4.2 nao
7.0 181.0 000 0 $.$ nao
0.7 08.0 000 1.0 sin
... ... ... ... ... ...
o soia inpoilaoo con conanoo:
> PrecoCasas <- read.table(casas.dat, header=T)
onoo o paianolio aoicional Icuucr=3H11 (ou sinplosnonlo Icuucr=3) inoica quo a
piinoiia linha conlon os nonos oas vaiiavois o nao oxislon oliquolas oo linha.
7.2 A funo scan()
Suponhanos quo piolonoonos inpoilai o fichoiio inpul.oal, suposlanonlo localizaoo no
oiiocloiio coiionlo, quo conlon on colunas os oaoos coiiosponoonlos a lios vocloios, looos con
o nosno conpiinonlo, sonoo o piinoiio alfanunoiico o os oulios oois nunoiicos. O piinoiio
passo consislo on loi os lios vocloios oo fichoiio, con a funao scun]}:
> entrada <- scan(input.dat, list( ,0,0))
O sogunoo aigunonlo usaoo na funao o una osliuluia oo conliolo, ooslinaoa a oofinii o
nooo cono os lios vocloios soiao lioos. O iosullaoo o guaioaoo na lisla oosignaoa con o nono
onliaoa, cujas conpononlos sao os lios vocloios. Do soguioa, pooonos iofoiii-nos a caoa una
ooslas conpononlos, assignanoo-lhos nonos:
> etiqueta <- entrada[[1]]; x <- entrada[[2]]; y <- entrada[[3]]
Lsla assignaao oo nonos as conpononlos oa lisla poooiia loi sioo oxoculaoa ao inpoilai
os oaoos:
> entrada <- scan(input.dat, list(etiqueta= , x=0, y=0))
Iiolonoonoo acoooi oiioclanonlo as vaiiavois, pooon io-assignai-so os nonos:
> etiqueta <- entrada$etiqueta; x <- entrada$x; y <- entrada$y
ou usai a funao allach() soLio a lisla onliaoa a fin oo ligai as vaiiavois na posiao 2 oo
caninho oo Lusca (voja Socao 0.8.4 [Conocao oo oLjoclos vaiiaoos[, pag. 80).
7 Inpoilaao oo fichoiios oxloinos 40
So looas as conpononlos oo aiquivo a inpoilai sao oo nosno nooo (nunoiicas,
alfanunoiicas, olc.), pooo usai-so cono sogunoo aigunonlo na funao scan() un nico valoi (oo
nooo ioonlico as conpononlos) o nao una lisla:
> X <- matrix(scan(light.dat,0), ncol=5, byrow=TRUE)
A funao scan() poinilo ioalizai inpoilaoos nais conploxas, cono pooo consullai na
ajuoa.
7.3 Acesso a dados internos
Conjunlanonlo con I sao foinocioos nais oo cinquonla conjunlos oo oaoos, o oulios nais
oslao oisponvois nas LiLliolocas (incluinoo as LiLliolocas slanoaio quo aconpanhan o
piogiana). Iaia poooi ulilizai oslos oaoos, lon oo caiiogai-so oxplicilanonlo, usanoo a funao
uuIu]}. Iaia oLloi a lisla oas conjunlos oo oaoos oxislonlos, uso o conanoo:
> data()
o paia caiiogai un oossos conjunlos oo oaoos, oovo inoicai-so o nono cono aigunonlo oa
funao:
> data(infert)
Noinalnonlo un conanoo ooslo lipo caiioga un oLjoclo con o nosno nono, quo oovo soi
una folha oo oaoos. Ln ooloininaoos casos, pooo aconlocoi quo sojan caiiogaoos vaiios
oLjoclos, polo quo nuna lal siluaao oovoia consullai a ajuoa oisponvol soLio o oLjoclo on
conciolo paia saLoi qual soia o iosullaoo oo conanoo.
7.3.1 Acesso a dados de uma biblioteca
Iaia acoooi aos oaoos incluoos nuna LiLlioloca, Lasla ospocificai o nono oa LiLlioloca on
aigunonlo oa funao uuIu]}. Ioi oxonplo:
> data(package=nls)
> data(Puromycin, package=nls)
So una LiLlioloca foi ligaoo pola funao I1Irur]}, os conjunlos oo oaoos nola conlioos
foian aulonalicanonlo incluoos no caninho oo Lusca, o nao o nocossaiio usai o aigunonlo
n|nj. A soguinlo soquoncia oo conanoos:
> library(nls)
> data()
> data(Puromycin)
liga a LiLlioloca nIs, apiosonla una lislagon oo looos os conjunlos oo oaoos ligaoos
aclualnonlo (polo nonos, as LiLliolocas Iusc o nIs) o caiioga conjunlo oo oaoos Iuionycin oa
LiLlioloca nIs (ou oa piinoiia LiLlioloca quo conlonha un o conjunlo oo oaoos con oslo nono).
As LiLliolocas ciiaoas polos ulilizaooios oo I sao una valiosa fonlo oo oaoos. As nolas oo
Di. VonaLlos, oiigon oosla inlioouao, conlon un conjunlo oo oaoos oisponvol on CIAN na
LiLlioloca HnoIcs.
7 Inpoilaao oo fichoiios oxloinos 41
7.4 Edio de dados
Una voz caiiogaoa una osliuluia oo oaoos, a funao uuIu.cnIr]}, oisponvol nalgunas
voisoos oo I, poinilo nooifica-la. A oioon:
> xnovo <- data.entry(xvelho)
ooila xvolho usanoo un anLionlo sinilai a una folha oo calculo. Ao finalizai, o iosullaoo o
guaioaoo on xnovo. Os oLjoclos xvolho, o consoquonlononlo xnovo, pooon soi naliizos ,
vocloios, folhas oo oaoos ou oLjoclos alonicos.
So so uliliza a funao son aigunonlos:
> xnovo <- data.entry()
aLio una folha vazia, poinilinoo a inlioouao oo oaoos
2
.
7.5 Importao de dados
Ln nuilos casos pooo soi nocossaiio inpoilai os oaoos a pailii oo Lasos oo oaoos, ou
gonoiicanonlo, oosoo fichoiios ciiaoos con oulios piogianas.. Lslao a oosonvolvoi-so oivoisas
iolinas paia a inpoilaao oo oaoos oo fonlos oxloinas a I. Iiosonlononlo oxislo a LiLlioloca
sIuIurcuu quo lo o osciovo fichoiios Slala, o una voisao oxpoiinonlal oa LiLlioloca ]orc1gn,
planoaoa paia poinilii a loiluia oo fichoiios SAS, MinilaL o SISS. Oulias LiLliolocas poinilon
o acosso a Lasos oo oaoos quo supoilan SQL, o osla quaso pionla a iolina RODDC paia acoooi
a Lasos oo oaoos ODDC (lais cono Accoss o Miciosofl Winoows).
2
Ln anLionlo Winoows pooo usai o ooiloi nolopao:
ooil()
o ao saii, guaioai os oaoos inlioouzioos nun fichoiio quo oopois poooia inpoilai con
rcuu.IuIIc]}.
$ DisliiLuioos oo pioLaLilioaoos 42
8 Distribuies de probabilidades
8.1 Funes estatsticas
I oispoo oo un anplio conjunlo oo laLolas oslalslicas. Iaia caoa una oas oisliiLuioos
supoilaoas, oispoon-so oo funoos quo poinilon calculai a funao oo oisliiLuiao,
( ) Pr( ) F x X x = s , a funao oo oisliiLuiao invoisa, a funao oonsioaoo o a goiaao oo
nnoios psouoo-aloaloiios. As oisliiLuioos oisponvois sao as soguinlos:
DisliiLuiao nono oa funao Aigunonlos aoicionais
Lola Lola shapo1, shapo2, ncp
Linonial Linon sizo, pioL
Cauchy cauchy localion, scalo
qui-quaoiaoo chisq of, ncp
oxpononcial oxp ialo
F oo Snooocoi f of1, of2, ncp
ganna ganna shapo, scalo
goonoliica goon pioL
hipoigoonoliica hypoi n, n, l
log-noinal lnoin noanlog, solog
logslica logis localion, scalo
Linonial nogaliva nLinon sizo, pioL
noinal noin noan, so
Ioisson pois lanLoa
l oo Sluoonl l of, ncp
unifoino unif nin, nax
WoiLull woiLull shapo, scalo
Wilcoxon wilcox n, n
Iaia consliuii o nono oo caoa funao, ulilizo o nono oa funao, piocooioo oo piofixo d"
paia a funao oonsioaoo, " paia a funao oo oisliiLuiao, q" paia a funao oo oisliiLuiao
invoisa, o r" paia a funao goiaooia oo nnoios psouoo-aloaloiios. O piinoiio aigunonlo o x
paia a funao oo oonsioaoo, q paia a funao oo oisliiLuiao, p paia a funao oo oisliiLuiao
invoisa o n paia a funao goiaooia oo nnoios psouoo-aloaloiios (oxcoplo no caso oo rIcr]}
o ru1Icoi]}, paia as quais o nn). No nononlo on quo oslo nanual foi olaLoiaoo, o paianolio
oo nao-conlialioaoo nc aponas osla oisponvol paia as funoos oo oisliiLuiao o algunas oulias
funoos. Consullo os lopicos oo ajuoa paia caoa un oos casos.
As funoos iii]} (funao oo oisliiLuiao) o giii]} (funao oo oisliiLuiao invoisa) lon
os aigunonlos logicos lowor.fail o log.; as funoos uiii]} (funao oonsioaoo) lon o aigunonlo
$ DisliiLuioos oo pioLaLilioaoos 48
logico log. O uso ooslos aigunonlos poinilo, poi oxonplo, oLloi a funao hazaio` cunulaliva,
( ) log 1 ( ) H t F t = , aliavos oa oxpiossao:
-pxxx(t, ..., lower.tail = FALSE, log.p = TRUE)
ou nais coiioclanonlo, as funoos log-voiosinilhana (fazonoo dxxx(... , log = TRUE)
oiioclanonlo.
Alon oas funoos anloiioios, oslao lanLon oisponvois as funoos IuIc]} o gIucIc]}
paia a oisliiLuiao oo sluoonlizoo iango" oo una anoslia piovonionlo oa oisliiLuiao noinal.
Os soguinlos oxonplos oxonplifican algunas ooslas funoos:
> ## Valor da probabilidade das caudas (p-value) da distribuio t-
Student
> 2*pt(-2.43, df=13)
[1] 0.0303309
> ## Percentil 1% superior de uma distribuio F(2,7)
> qf(0.99,2,7)
[1] 9.546578
8.2 Anlise da distribuio de uma amostra de dados
Daoa una anoslia uni-oinonsional oo oaoos, pooo aLoioai-so o osluoo oa sua oisliiLuiao
oo oivoisas nanoiias. A nais facil consislo on calculai un iosuno oslalslico, con qualquoi oas
funoos sunnur]} ou ]1rcnun]}; lanLon so pooo consliuii un oiagiana oo caulo-o-folhas
con a funao sIcn]}:
> data(faithful)
> attach(faithful)
> summary(eruptions)
Min. 1sl Qu. Mooian Moan 8io Qu. Max.
1.000 2.108 4.000 8.4$$ 4.44 .100
> fivenum(eruptions)
[1[ 1.0000 2.1$ 4.0000 4.4$ .1000
> stem(eruptions)
1ho oocinal poinl is 1 oigil(s) lo lho lofl of lho [
10 [ 0708$$
1$ [ 0000222888888877777777$$$$2288777$$$
20 [ 0000222887$$000877$
22 [ 0002887$0287$
24 [ 0022$
20 [ 28
2$ [ 0$0
80 [ 7
82 [ 2887
84 [ 20077
$ DisliiLuioos oo pioLaLilioaoos 44
80 [ 0000$2877
8$ [ 288888$22277
40 [ 0000008877$$$$$0022887777$
42 [ 088877$$002888887777$
44 [ 022228877$00000000288888777$$$$
40 [ 0000288877000000287$
4$ [ 0000002288$00888
0 [ 0870
Ln voz oo oiagiana oo caulo-o-folhas, pooo consliuii-so un hislogiana con a funao
I1sI]}:
> hist(eruptions)
> ## Definir os intervalos menores, e sobrepor a funo de
densidade
> hist(eruptions, seq(1.6, 5.2, 0.2), prob=TRUE)
> lines(density(eruptions, bw=0.1))
> rug(eruptions) # Mostra os pontos
A funao ucns1I]} poinilo ioalizai giaficos oa funao oo oonsioaoo, o ulilizano-la paia
soLiopoi oslo giafico ao hislogiana piovianonlo consliuoo. O facloi oo suavizaao, bw, foi
soloccionaoa poi lonlalivas, oo nooo a quo giafico iosullo nais olucioalivo, pois o sou valoi poi
oofoilo apiosonla una linha oo oonsioaoos oxlionanonlo suavizaoa (as LiLliolocas Mass o
KornSmoofh lon oisponvois nolooos aulonalicos paia soloccionai o facloi oo suavizaao).
A funao ccu]]}, oisponvol na LiLlioloca slanoaio sfofnn, poinilo iopiosonlai a funao oo
oisliiLuiao cunulaliva onpiica:
> # Carregar a biblioteca stepfun
> library(stepfun)
Histogram of eruptions
eruptions
R
e
l
a
t
i
v
e
E
r
e
q
u
e
n
c
y
1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
0
.
0
0
.
1
0
.
2
0
.
3
0
.
4
0
.
5
0
.
6
0
.
7
$ DisliiLuioos oo pioLaLilioaoos 4
> plot(ecdf(eruptions), do.poits=FALSE, verticals=TRUE)
Lsla oisliiLuiao, oLvianonlo, nao so paioco con nonhuna oas oisliiLuioos slanoaio.
Ioion pooonos analisai o quo so passa con as oiupoos con nais oo 8 ninulos: Vanos
solocciona-las, o ajuslai-lhos una oisliiLuiao noinal.
> long <- eruptions[eruptions > 3]
> plot(ecdf(long), do.points=FALSE, verticals=TRUE)
> x <- seq(3, 5.4, 0.01)
> lines(x, pnorm(x, mean=mean(long), sd=sqrt(var(long))), lty=3)
Os giaficos Q-Q (quanlil-quanlil) pooon soi lois paia analisai os oaoos nais
cuioaoosanonlo:
> par(pty="s")
> qqnorm(long); qqline(long)
3.0 3.5 4.0 4.5 5.0
0
.
0
0
.
2
0
.
4
0
.
6
0
.
8
1
.
0
ecdf(long)
x
E
n
(
x
)
-2 -1 0 1 2
3
.
0
3
.
5
4
.
0
4
.
5
5
.
0
Normal Q-Q Plot
Theoretical Quantiles
S
a
m
p
l
e
Q
u
a
n
t
i
l
e
s
$ DisliiLuioos oo pioLaLilioaoos 40
quo noslia un ajuslanonlo iazoavol, onLoia con a cauoa oiioila nais cuila oo quo
looiicanonlo so oovoiia ospoiai nuna oisliiLuiao noinal. Vanos conpaia-la con una anoslia
oo oaoos psouoo-aloaloiios goiaoos a pailii oo una oisliiLuiao l-Sluoonl con giaus oo
liLoioaoo (l
, nooianlo:
> qqplot(qt(ppoints(250), df=5), x, xlab="Grfico Q-Q de t_5")
> qqline(x)
Ioi llino, ioalizonos un conliaslo oo hipolosos paia conpiovai a noinalioaoo. A
LiLlioloca cfosf conlon una iolina paia ioalizai o loslo oo Shapiio-Will:
> library(ctest)
> shapiro.test(long)
Shapiio-Will noinalily losl
oala: long
W = 0.0708, p-valuo = 0.0102
o o loslo oo Kolnogoiov-Sniinov:
> ks.test(long, "pnorm", mean=mean(long), sd=sqrt(var(long)))
Ono-sanplo Kolnogoiov-Sniinov losl
oala: long
D = 0.0001, p-valuo = 0.42$4
alloinalivo hypolhosis: lwo.siooo
(Nolo quo a looiia oo oisliiLuiao nao o valioa noslo loslo, ja quo oslinanos os paianolios
oa oisliiLuiao noinal a pailii oa nosna anoslia).
8.3 Contrastes de duas amostras
Alo agoia, linilano-nos a ajuslai una anoslia a oisliiLuiao noinal. Una nolooologia
oslalslica nais conun o conpaiai ouas anoslias. Consiooio as soguinlos ouas anoslias,
oLlioas on Iico (100, pag. 400), iofoionlos ao caloi lalonlo na fusao oo golo on calgn:
Molooo A: 70.0$ $0.04 $0.02 $0.04 $0.08 $0.08 $0.04 70.07
$0.0 $0.08 $0.02 $0.00 $0.02
Molooo L: $0.02 70.04 70.0$ 70.07 70.07 $0.08 70.0 70.07
Apos inlioouzii os oaoos, pooonos conpaiai giaficanonlo as ouas anoslias, nooianlo un
oiagiana oo oxlionos-o-quailis:
> A <- scan()
$ DisliiLuioos oo pioLaLilioaoos 47
1: 70.0$ $0.04 $0.02 $0.04 $0.08 $0.08 $0.04 70.07
0: $0.0 $0.08 $0.02 $0.00 $0.02
Ioao 18 ilons
> B <- scan()
1: $0.02 70.04 70.0$ 70.07 70.07 $0.08 70.0 70.07
Ioao $ ilons
> boxplot(A,B)
quo noslia claianonlo quo o nolooo A lon lonooncia a oai valoios nooios nais olovaoos:
Iaia conliaslai a igualoaoo oo nooias oas ouas populaoos oo onoo so ioliiaian as
anoslias, usa-so un conliaslo oo hipolosos l-Sluoonl paia ouas anoslias inooponoonlos:
> t.test(A,B)
Wolch 1wo Sanplo l-losl
oala: A ano L
l = 8.2400, of = 12.027, p-valuo = 0.00004
alloinalivo hypolhosis: liuo oiffoionco in noans is nol oqual lo 0
0 poiconl confioonco inloival:
0.018$20 0.0701$820
sanplo oslinalos:
noan of x noan of y
$0.02077 70.07$7
quo iovola una oifoiona significaliva onlio as ouas nooias, soL o piossuposlo oa inooponooncia
o noinalioaoo oas anoslias. A funao I.IcsI]} oo I nao piossupoo a igualoaoo oas vaiiancias
1 2
7
9
.
9
4
7
9
.
9
6
7
9
.
9
8
8
0
.
0
0
8
0
.
0
2
8
0
.
0
4
$ DisliiLuioos oo pioLaLilioaoos 4$
(on conliaslo con a oquivalonlo funao l.losl oo piogiana S-ILUS). Iooonos loslai a
igualoaoo oo vaiiancias usanoo a funao rur.IcsI]} oisponvol na LiLlioloca cfosf:
> library(ctest) # No necessrio, se previamente carregada
> var.test(A, B)
F losl lo conpaio lwo vaiiancos
oala: A ano L
F = 0.$87, nun of = 12, oonon of = 7, p-valuo = 0.808$
alloinalivo hypolhosis: liuo ialio of vaiiancos is nol oqual lo 1
0 poiconl confioonco inloival:
0.121007 2.1020$7
sanplo oslinalos:
ialio of vaiiancos
0.$8740
quo nao iovola oviooncia oo quo as vaiiancias sojan significalivanonlo oifoionlos; agoia pooonos
ioalizai o loslo l classico, assuninoo vaiiancias iguais:
> t.test(A, B, var.equal=TRUE)
1wo Sanplo l-losl
oala: A ano L
l = 8.4722, of = 10, p-valuo = 0.0021
alloinalivo hypolhosis: liuo oiffoionco in noans is nol oqual lo 0
0 poiconl confioonco inloival:
0.010000$ 0.007847$$
sanplo oslinalos:
noan of x noan of y
$0.02077 70.07$7
1al cono iofoiioo, una oas conoioos oo aplicaao oos loslos anloiioios o a noinalioaoo oas
anoslias. So osla nao so voiifica, pooo ulilizai-so o loslo oo Wilcoxon (ou loslo oo Mann-
Whilnoy), quo aponas oxigo quo, soL o piossuposlo oa hipoloso nula, a oisliiLuiao soja
conlnua. A funao u1Icoi.IcsI]} osla oisponvol na LiLlioloca cfosf.
> library(ctest) # No necessrio, se previamente carregada
> wilcox.test(A, B)
Wilcoxon ianl sun losl wilh conlinuily coiioclion
oala: A ano L
W = $0, p-valuo = 0.007407
$ DisliiLuioos oo pioLaLilioaoos 40
alloinalivo hypolhosis: liuo nu is nol oqual lo 0
Waining nossago:
Cannol conpulo oxacl p-valuo wilh lios in: wilcox.losl(A, L)
O iosullaoo oo loslo conlon una nola oo aovoiloncia, sugoiinoo quo, havonoo valoios
iopolioos on caoa anoslia (piovavolnonlo oovioo a aiiooonoanonlos), soja piovavol quo os
oaoos nao piocooan oo una anoslia conlnua.
Alon oo oiagiana oo oxlionos-o-quailis, I oispoo oo oulias funoos (oisponvois na
LiLlioloca sfofnn) quo poinilon conpaiai giaficanonlo ouas anoslias. As funoos:
> library(stepfun) # No necessrio, se previamente carregada
> plot(ecdf(A), do.points=FALSE, verticals=TRUE, xlim=range(A,B))
> plot(ecdf(B), do.points=FALSE, verticals=TRUE, add=TRUE)
iopiosonlan giaficanonlo as ouas funoos oo oisliiLuiao onpiicas; a funao ggIoI]} conslioi
un giafico Q-Q oas ouas anoslias.
O loslo oo Kolnogoiov-Sniinov, quo aponas oxigo quo a oisliiLuiao conun oas ouas
anoslias sojan conlnuas, calcula a oislancia naxina onlio as ouas funoos oo oisliiLuiao:
> ks.test(A, B)
[1[ -1.20000o-01 -2.00000o-01 -.4$0700o-01 -.0018$o-01 -.10280$o-01
[0[ -4.18401o-01 -8.070028o-01 -7.00280$o-02 .111o-17
1wo-sanplo Kolnogoiov-Sniinov losl
oala: A ano L
D = 0.002, p-valuo = 0.0010
alloinalivo hypolhosis: lwo.siooo
Waining nossago:
cannol conpulo coiiocl p-valuos wilh lios in: ls.losl(A, L)
fazonoo a nosna aovoiloncia oo loslo Wilcoxon.
0 Ciclos. Lxpiossoos conoicionais 0
9 Ciclos. Expresses condicionais
9.1 Expresses agrupadas
I o una linguagon oo oxpiossoos, no sonlioo quo os conanoos oo quo oispoo sao funoos ou
oxpiossoos quo oovolvon un iosullaoo. Mosno a funao oo assignaao o una oxpiossao, cujo
iosullaoo o o valoi assignaoo o quo pooo ulilizai-so on qualquoi slio on quo so possa usai una
oxpiossao. Ln pailiculai, o possvol ioalizai assignaoos nlliplas.
As oioons pooon a giupai-so onlio chavolas, oxros_1; ... ; oxros_m| sonoo sopaiaoas
poi ponlo-o-vigula ;`. O iosullaoo ooslo giupo oo oxpiossoos o o iosullaoo oa llina oxpiossao
oo giupo quo soja calculaoa. Cono un lal giupo oo oxpiossoos o lanLon una oxpiossao, pooo
incluii-so onlio paionlosis, o soi usaoo cono pailo oo una oxpiossao naioi.
9.2 Ordens de controlo
9.2.1 Execuo condicional. A ordem if
A linguagon I oispoo oo oioons conoicionais oa foina:
> if (expres_1) expres_2 else expres_3
onoo o iosullaoo oo .:.1 oovo soi un valoi logico; so oslo o voioaooiio (1 ou 1IUL), o
calculaoa a oxpiossao .:..; caso conliaiio, o so a oioon conlon a oxpiossao olso, soia
oxoculaoa a oxpiossao .:..
Os opoiaooios logicos && (AND ou L) o || (OI ou OU) pooon ulilizai-so cono conoioos
oo una oxpiossao if. Lnquanlo quo os opoiaooios & o | so aplican a looos os olononlos oo un
vocloi, && o || aplican-so a vocloios oo conpiinonlo unilaiio o so calculan o sogunoo
aigunonlo so o nocossaiio, islo o, so o valoi oa oxpiossao conplola nao so ooouz oo piinoiio
aigunonlo.
Lxislo una voisao vocloiizaoa oa consliuao if]fhon, quo o a funao ifolso, cuja foina o
ifelse(condio, a, b), o cujo iosullaoo o un vocloi con o conpiinonlo oo naioi oos
sous aigunonlos, o cujo i.osino valoi o a[i[ so a conoiao[i[ o voioaooiia, ou L[i[ on caso
conliaiio.
9.2.2 Ciclos. As ordens for, repeat, while
Os ciclos iopolilivos foi sao oa foina:
> for (nome in expres_1) expres_2
onoo nun iopiosonla una vaiiavol oo conliolo oas iloiaoos, .:.1 o un vocloi (goialnonlo
una soquoncia oo lipo 1:n, on quo n o un nnoio naluial), o .:.. o una oxpiossao,
fioquonlononlo agiupaoa, on cujas suL-oxpiossoos pooo apaiocoi a vaiiavol oo conliolo; osla
oxpiossao o calculaoa iopolioanonlo a nooioa quo a vaiiavol oo conliolo nono poicoiio os
valoios oa .:.1.
0 Ciclos. Lxpiossoos conoicionais 1
Ioi oxonplo, suponhanos quo ino o un vocloi oo inoicaooios oo classos, o piolonoon
consliuii-so giaficos oo oispoisao (x,y) sopaiaoos poi classo. Una possiLilioaoo o usai a funao
coIoI]}, quo soia analisaoa aoianlo, o quo pioouz una naliiz oo giaficos coiiosponoonlos a
caoa nvol oo facloi. Oulia nanoiia oo consliuii oslos giaficos o usai una osliuluia iopoliliva:
> xc <- split(x, ind)
> yc <- split(y, ind)
> for (i in 1:length(yc))
{
plot(xc[[i]], yc[[i]]);
abline(lsfit(xc[[i]], yc[[i]]))
}
A funao sI1I]} pioouz una lisla oo vocloios oivioinoo un vocloi oo acoioo con as classos
ospocificaoas poi un facloi. Lsla funao o nuilo lil, nonoaoanonlo quanoo usaoa
conjunlanonlo con oiagianas oo oxlionos-o-quailis. Consullo a ajuoa paia nais poinonoios.
Nofa: Ln I a funao ]or]} o ulilizaoa nonos fioquonlononlo quo on oulias
linguagons liaoicionais, pois I liaLalha con os oLjoclos inloiios, liianoo vanlagons
oo uso oa osliuluia oos oLjoclos.
Oulias osliuluias iopolilivas sao:
> repeat expresso
o:
> while (condio) expresso
A funao IrcuI]} usa-so paia loininai qualquoi ciclo. Lsla o a nica foina oo quoLiai un
ciclo iopoal (a nao soi quo ocoiia un oiio).
A funao nciI]} usa-so paia ooixai oo oxoculai un ciclo, o passai a oxpiossao soguinlo.
As oioons oo conliolo sao haLilualnonlo usaoas na consliuao oo funoos, quo soiao
lialaoas no Caplulo 10 [Dofina as suas piopiias funoos[, pag. 2, onoo soiao aLoioaoos vaiios
oxonplos.
10 Dofina as suas piopiias funoos 2
10 Defina as suas prprias funes
Cono ja foi iofoiioo oivoisas vozos alo agoia, I poinilo consliuii oLjoclos oo nooo
&n.un, quo consliluon novas funoos quo so pooon usai poi sua voz on oxpiossoos
posloiioios. Noslo conloxlo, a linguagon I ganha consiooiavolnonlo on poloncia, conooioaoo o
ologancia, o apionooi a osciovoi funoos lois o una oas foinas oo consoguii quo o uso oa
linguagon I soja conooo o piooulivo.
Dovo ioalai-so quo nuilas oas funoos quo oslao oisponvois on I, lais cono ncun]},
rur]}, osIsc1I]}, oslao osciilas con a piopiia linguagon I, nao oifoiinoo suLslancialnonlo
oas novas funoos quo o ulilizaooi possa ciiai.
Iaia oofinii una funao oovo fazoi-so una assignaao oa foina:
> Nome_da_Funo <- function(arg_1, arg_2, ...) expresso
onoo oxpiossao significa a oxpiossao oo I (goialnonlo una oxpiossao agiupaoa), quo usa os
aigunonlos n:j., paia calculai un valoi. O valoi oossa oxpiossao o o valoi oovolvioo pola
funao.
O uso oa funao o goialnonlo oa foina Nome_da_Funo(arg_1, arg_2, ...) o
pooo ulilizai-so on qualquoi alluia quo o uso oo una funao soja coiioclo.
10.1 Alguns exemplos simples
Cono un piinoiio oxonplo, consiooio a funao paia calculai a oslalslica l-Sluoonl oo
ouas anoslias, noslianoo looos os passos. Lslo oxonplo o nuilo ailificial, ja quo oxislon, lal
cono vinos, oulios nooos nais sinplos oo oLloi o nosno iosullaoo.
A funao (chanonos-lho ..) pooo soi oofinioa oa soguinlo foina:
> teste.t <- function(y1, y2)
{
n1 <- length(y1); n2 <- length(y2)
yb1 <- mean(y1); yb2 <- mean(y2)
s1 <- var(y1); s2 <- var(y2)
s <- ((n1-1)*s1 + (n2-1)*s2)/(n1+n2-2)
tst <- (yb1 - yb2)/sqrt(s*(1/n1 + 1/n2))
tst
}
Una voz osciila osla funao, pooo usai-so paia ioalizai un conliaslo oo l-Sluoonl paia as
nooias oo ouas anoslias (paia oxonplificai, usonos os oaoos oos vocloios A o L, oofinioos na
Socao $.8 [Conliaslos oo ouas anoslias[, pag. 2), sonoo usaoa oa soguinlo foina:
> teste.t(A, B)
[1[ 8.47224
Cono un sogunoo oxonplo, piolonoo-so osciovoi una funao paia onulai oiioclanonlo a
funao Laclslash" oo piogiana MA1LAL, quo calcula os cooficionlos oa piojocao oilogonal
10 Dofina as suas piopiias funoos 8
oo vocloi y soLio o ospao oas colunas oa naliiz X (islo o, os goialnonlo oosignaoos
oslinaooios oo nninos quaoiaoos oos cooficionlos oo iogiossao). Lsla oslinaliva o
noinalnonlo oxoculaoa con a funao gr]}; poion, oaoa a sua conploxioaoo, o nais conooo
oispoi oo una funao con a soguinlo foina, quo poinila usa-la oiioclanonlo.
Daoos un vocloi
1 n
v
o una naliiz
n p
X
, onlao oofino-so
1
\ ( ' ) ' X v X X X v
= onoo
1
( ' ) X X
o
b b
K
= = = )
o osla funao invoisa, () ) , oononina-so &nnu J n|n.
Lslos piossuposlos sao suficionlononlo aLiangonlos paia aLaicai una anpla classo oo
nooolos lois na oslalslica aplicaoa o, sinullanoanonlo, suficionlononlo iosliilivos paia o
oosonvolvinonlo oo una nolooologia unificaoa oo oslinaao o infoioncia, polo nonos
assinplolicanonlo. Os inloiossaoos on apiofunoai oslo lona pooon consullai qualquoi oas
oLias oo iofoioncia soLio o assunlo, lal cono McCullagh \ Nolooi (10$0) ou DoLson (1000).
11.6.1 Famlias
A classo oo nooolos linoaios gonoializaoos quo pooon soi lialaoos on I inclui as vaiiavois
iosposla oo oisliiLuioos jn&...nnn (nu:nn|), h.nun.n|, u...un, jn&...nnn .n:.n (nu:nn|
.n:.n) o jnnnn, Lon cono os nooolos oo j&n..-:u..n.||nnn on quo a oisliiLuiao oa
vaiiavol iosposla nao osla oxplicilanonlo oofinioa. Nosla llina siluaao, oovo ospocificai-so a
&nnu J n:.nn.n cono una funao oa nooia; nos ioslanlos casos, osla funao osla inplcila
na oisliiLuiao oa vaiiavol iosposla.
Caoa oisliiLuiao oa vaiiavol iosposla aonilo oivoisas funoos oo onlaco quo iolacionan a
nooia con o piooicloi linoai. Do soguioa apiosonlan-so as quo aulonalicanonlo oslao
oisponvois:
Nono oa fanlia Funao oo onlaco
Linonial logil, pioLil, cloglog
gaussian ioonlily
gana ioonlily, invoiso, log
invoiso.gausian 1nu`2
poisson ioonlily, log, sqil
qausi logil, pioLil, cloglog, ioonlily, invoiso
log, sqil, 1nu`2
11 Mooolos oslalslicos on I 71
A conLinaao oo una oisliiLuiao oa vaiiavol iosposla, una funao oo onlaco o oulias
infoinaoos quo sao nocossaiias paia lovai a caLo a nooolizaao, oononina-so nn.|.n oo nooolo
linoai gonoializaoo.
11.6.2 A funo glm()
Daoo quo a oisliiLuiao oa vaiiavol iosposla ooponoo oas vaiiavois piooicloias aliavos oo
una funao linoai sinplos, pooo ulilizai-so o nosno nocanisno oos nooolos linoaios paia
ospocificai a pailo linoai oo nooolo linoai gonoializaoo. Conluoo, a fanlia oovo ospocificai-so oo
nooo oislinlo.
A funao oo I quo poinilo ajuslai un nooolo linoai gonoializaoo o gIn]}, quo o oa
soguinlo foina:
> modelo.ajustado <- glm(formula,
family=familia.geradora, data=folha.dados)
A nica caiacloislica nova o o paianolio nn|.n.j:nJu:n aliavos oo qual so oosciovo a
fanlia oo nooolo linoai gonoializaoo. L o nono oo una funao quo goia una lisla oo funoos o
oxpiossoos quo, junlas, oofinon o conliolan o nooolo o o piocosso oo oslinaao. LnLoia possa
paiocoi conplicaoo a piinoiia visla, a sua ulilizaao o nuilo sinplos.
Os nonos oas funoos slanoaio goiaooias oo fanlias quo aconpanhan I sao lislaoas na
laLola apiosonlaoa na Socao 11.0.1 [Fanlias[, pag. 70, con a oosignaao oo Nono oa fanlia".
Caso haja nocossioaoo oo soloccionai una funao oo onlaco, oovo inoicai-so cono un paianolio,
onlio paionlosis, oo nono oa fanlia. No caso oa fanlia j&n..", a funao oo vaiiancia pooo
ospocificai-so oo nosno nooo.
Vojanos alguns oxonplos.
Famlia ganssian
Una oxpiossao oa foina:
> fm <- glm( y ~ x1 + x2, family = gaussian, data=vendas)
oLlon o nosno iosullaoo oo:
> fm <- lm( y ~ x1 + x2, data=vendas)
nas con nonoi oficioncia. Nolo quo a fanlia gaussian nao oispoo aulonalicanonlo oo una
soiio oo funoos oo onlaco, polo quo nao aonilo paianolios. So una ooloininaoa analiso
nocossila oo usai a fanlia gaussian con un onlaco nao-slanoaio, a soluao passa polo uso oa
fanlia j&n.., cono so voia posloiioinonlo.
Famlia binomial
Consiooionos o soguinlo oxonplo ailificial (Silvoy, 1070).
Os honons oa ilha oo Kalylhos, no Mai Lgou, sofion oo una ooona oculai congonila cujos
ofoilos so agiavan con a ioaoo. 1onou-so una anoslia oo vaiios honons oosla ilha, oo ioaoos
oifoionlos, cujos iosullaoos so soguon:
11 Mooolos oslalslicos on I 72
Ioaoo: 20 8 4 70
N oo honons: 0 0 0 0 0
N oo cogos: 0 17 20 87 44
Consiooionos o pioLlona oo ajuslai un nooolo logslico o un nooolo pioLil a oslos oaoos,
o oslinai on caoa nooolo o paianolio LD0, coiiosponoonlo a ioaoo on quo a pioLaLilioaoo oo
coguoiia o so 0/.
So y o o nnoio oo cogos con ioaoo x, o n o o nnoio oo sujoilos osluoaoos, anLos os
nooolos sao oa foina:
0 1
~ ( , ( )) v B n F x E E +
on quo, paia o nooolo pioLil, ( ) ( ) F : : = u o a funao oo oisliiLuiao noinal (0,1), o no
nooolo logil (nooolo poi oofoilo), ( ) /(1 )
: :
F : e e = + . Ln anLos os casos, LD0 o oofinioo
cono:
0 1
50 LD E E =
islo o, o ponlo on quo o aigunonlo oa funao oo oisliiLuiao o zoio.
Ln piinoiio lugai, vanos inlioouzii os oaoos paia una folha oo oaoos:
> kalythos <- data.frame(x=c(20,35,45,55,70),
n=rep(50,5), y=c(6,17,26,37,44))
Iaia ajuslai un nooolo Linonial ulilizanoo gIn]}, oxislon ouas possiLilioaoos paia a
iosposla:
- So a iosposla o un u:, onlao oovo coiiosponooi a JnJu. h.nn:.u., o poilanlo so oovo
conloi 0 (zoio) o 1 (un).
- So a iosposla o una nn:.. J J&n. u|&nn., a piinoiia coluna oovo conloi o nnoio oo
sucossos o a sogunoa o nnoio oo insucossos.
Vanos a usai a sogunoa convonao, polo quo oovonos aoicionai una naliiz a nossa folha
oo oaoos:
> kalythos$Ymat <- cbind(kalythos$y, kalythos$n-kalythos$y)
Iaia ajuslai os oois nooolos ulilizanos:
> fmp <- glm(Ymat ~ x, family=binomial(link=probit),data= kalythos)
> fml <- glm(Ymat ~ x, family = binomial, data = kalythos)
Ja quo a funao oo onlaco o, poi oofoilo, a funao |uj., oslo paianolio pooo soi onilioo lal
cono so foz na sogunoa oxpiossao. Iaia voi os iosullaoos oo caoa un oos ajuslanonlos, faz-so:
> summary(fmp)
> summary(fml)
AnLos os nooolos so ajuslan (oonasiaoo Lon). Iaia oslinai LD0 pooonos oofinii a
soguinlo funao:
> ld50 <- function(b)
{
11 Mooolos oslalslicos on I 78
-b[1]/b[2]
}
o oo soguioa calculai o sou valoi, con os iosullaoos fnp o fnl anloiioios:
> ldp <- ld50(coef(fmp))
> ldl <- ld50(coef(fml))
> c(ldp, ldl)
(Inloicopl) (Inloicopl)
48.0088 48.00110
oLlonoo-so as oslinalivas oo 48.008 anos o 48.001 anos, iospoclivanonlo.
Modolos oisson
Iaia a fanlia poisson a funao oo onlaco pio-oofinioa o Iog, o o uso quo funoanonlalnonlo
so faz na pialica oosla fanlia o paia ajuslai nooolos log-linoaios oo Ioisson a oaoos oo
fioquoncias cuja oisliiLuiao o goialnonlo nulli-nonial. Lslo o un oxlonso o inpoilanlo lona,
quo conslilui una pailo funoanonlal oa ulilizaao oo nooolos gonoializaoos nao-gaussianos, quo
nao soia aqui oosonvolvioo.
Ocasionalnonlo suigon oaoos cuja oisliiLuiao o na ioalioaoo Ioisson, quo no passaoo so
analisavan cono oaoos gaussianos, apos lhos aplicai una liansfoinaao logailnica ou iaiz
quaoiaoa. Cono alloinaliva a osla llina liansfoinaao, pooo ajuslai-so un nooolo linoai
gonoializaoo oo Ioisson, cono no soguinlo oxonplo:
> fmod <- glm(y ~ A + B + x, family = poisson(link = sqrt),
data = worm.counts))
Modolos qnasi (qnasi -vorosimilhana)
Ln looas as fanlias, a vaiiancia oa vaiiavol iosposla ooponoo oa sua nooia, o lon un
paianolio oo oscala nulliplicalivo. A foina oo ooponooncia oa vaiiancia on iolaao a nooia o
una caiacloislica oa oisliiLuiao oa vaiiavol iosposla; poi oxonplo, paia a oisliiLuiao Ioisson
soia var| | v P = .
Iaia a oslinaao o infoioncia oa fanlia j&n..-:u..n.||nnn, a oisliiLuiao oxacla oa
vaiiavol iosposla nao osla ospocificaoa, nas aponas una funao oo onlaco o a foina cono a
vaiiancia ooponoo oa nooia. Ja quo a oslinaao quaso-voiosinilhana uliliza foinalnonlo as
nosnas locnicas oa oisliiLuiao gaussiana, osla fanlia poinilo ajuslai nooolos gaussianos con
funoos oo onlaco ou inclusivanonlo con funoos oo vaiiancia nao-slanoaio.
Ioi oxonplo, consiooionos a soguinlo iogiossao nao linoai:
1 1
2 2
:
v e
:
T
T
= +
3
.
0
1
.
5
0
.
0
1
.
5
3
.
0
Zona de dibujo
mai[1]
mai[2]
Mrgen
mar[3]
mfg=c(3,2,3,2)
omi[1]
omi[4]
mfrow=c(3,2)
oma[3]
12 Iolinas giaficas 00
pioonchinonlo o foilo poi linhas. A oisliiLuiao na figuia oo oxonplo foi ciiaoa
con n:u=,.) o noslia a pagina apos loion sioo ciiaoos os piinoiios
qualio giaficos.
nj = ., ., , .) Dofinon a posiao oa figuia aclual oonlio oa naliiz oo figuias
nlliplas. Os piinoiios oois valoios inoican a linha o a coluna oa figuia aclual;
os oois llinos valoios sao o nnoio oo linhas o colunas oa naliiz oo figuias
nlliplas. Ulilizo oslos paianolios paia soloccionai caoa una oas oifoionlos
figuias oa naliiz. Os oois llinos valoios pooon soi oifoionlos oos voioaooiios
valoios, a fin oo poooi oLloi figuias oo lananhos oislinlos nosna pagina.
.j = , v, 1, )1u Dofinon a posiao oa figuia aclual na pagina. Os valoios sao as posioos
oas naigons osquoioa, oiioila, infoiioi o supoiioi, iospoclivanonlo, oxpiossas on
piopoiao oa pagina oosoo o canlo infoiioi osquoioo. O oxonplo coiiosponoo a
una figuia na pailo infoiioi oiioila oa pagina. oslo paianolio poinilo colocai
una figuia on qualquoi lugai oa pagina.
unn = ., u, , u)
un. = u, u, u.B, u) Dofinon o lananho oas naigons oxloiioios. Do nooo sinilai a nn: o a
nn., o piinoiio osla oxpiosso on linhas oo loxlo o o sogunoo on pologaoas, o
coiiosponoon as naigons infoiioi, osquoioa, supoiioi o oiioila, iospoclivanonlo.
As naigons oxloiioios sao pailiculainonlo lois paia ajuslai convonionlononlo os llulos o
oliquolas. Iooo aciosconlai loxlo noslas naigons con a funao nIciI]}, usanoo o aigunonlo
u&:=J111. Ioi oofoilo, nao sao ciiaoas naigons oxloiioios, lonoo oo soi oofinioas
oxplicilanonlo con os aigunonlos ona ou oni.
L possvol ciiai oisposioos nais conploxas oo figuias nlliplas, usanoo as funoos
sI1I.scrccn]} o IuouI]}.
12.6 Dispositivos grficos
L possvol ciiai giaficos con I (con nvois oo qualioaoo oivoisos) on quaso looos os lipos
oo noniloios ou oo inpiossoias. Conluoo, o nocossaiio oofinii piovianonlo oo lipo oo oisposilivo
oo quo so liala. Lsla oofiniao o ioalizaoa inicianoo un un:u|nJu: Ju J..u...u j:n.u. A
finalioaoo oo conliolaooi oo oisposilivo o convoiloi as insliuoos giaficas oo I (poi oxonplo,
oosonha una linha") nuna foina quo o oisposilivo on pailiculai onlonoa.
Os conliolaooios oo oisposilivo sao iniciaoos chananoo una funao oo conliolaooi. Lxislo
una funao paia caoa conliolaooi, o a lisla conplola pooo oLloi-so con o conanoo
help(Devices). Ioi oxonplo, a oioon:
> postscript()
oiiocciona qualquoi saoa giafica paia una inpiossoia con foinalo IoslSciipl. Alguns
conliolaooios oo oisposilivos giaficos haLiluais sao:
x11() Iaia usai con o anLionlo oo janolas X11 o Miciosofl Winoows.
12 Iolinas giaficas 01
postscript() Iaia inpiinii on inpiossoias IoslSciipl ou ciiai fichoiios con oslo
foinalo.
pictex() Ciia un fichoiio LA1LX.
Ao loininai oo ulilizai un oisposilivo, assoguio-so oo finalizai o iospoclivo conliolaooi con
o conanoo:
> dev.off()
Lsla oioon assoguia quo o oisposilivo oncoiia coiioclanonlo; poi oxonplo no caso oo una
inpiossoia, assoguia quo caoa pagina o conplolanonlo conposla o onviaoa paia a inpiossoia.
12.6.1 Incluso de grficos PostScript em documentos
Ulilizanoo o aigunonlo filo na funao osIscr1I]} pooo guaioai os giaficos, on foinalo
IoslSciipl, no aiquivo quo oosojo. O giafico loia a oiionlaao hoiizonlal, a nao soi quo so
ospocifiquo o aigunonlo |u:..unn|=1151. O lananho oo giafico o conliolaoo con ao
aigunonlos .J| (laiguia) o |.j| (alluia) (o giafico soia io-oinonsionaoo oo nooo a ajuslai-
so coiioclanonlo as oinonsoos ospocificaoas). Ioi oxonplo, o conanoo:
>postscript(grafico.ps,horizontal=FALSE,height=5,pointsize=10)
ciiaia un aiquivo quo conlon o cooigo IoslSciipl paia una figuia con pologaoas oo alluia,
o quo poooia soi incluoo nun oocunonlo. 1onha on alonao quo so o fichoiio ja oxislo, o sou
conlooo soia soLiosciilo polo aclual conanoo. Islo ocoiioia nosno quo o aiquivo lonha sioo
ciiaoo na sossao aclual.
A naioi pailo oas ciiaao oo fichoiios IoslSciipl ooslina-so a inclusao oo figuias on
oocunonlos. Lsla laiofa pooo iosullai nolhoi ulilizanoo foinalo LIS (1n.&|nJ 1u.5:.):
o aiquivo pioouzioo poi I o sonpio ooslo foinalo, onLoia so naiquo o aiquivo cono sonoo
LIS so so uliliza o aigunonlo un.|=1151. Lsla nolaao o consoquoncia oa conpaliLilioaoo
con S, o inoica quo a saoa o consliluoa poi una nica pagina (quo o una ospocificaao oo
foinalo LIS). Iaia ciiai un giafico quo possa incluii nun oocunonlo son qualquoi pioLlona,
oovoia ulilizai o conanoo:
> postscript(grafico.eps, horizontal=FALSE, onefile=FALSE,
height = 8, width = 6, poitsize = 10)
12.6.2 Dispositivos grficos mltiplos
Na ulilizaao avanaoa oo I o goialnonlo nocossaiio oispoi oo oivoisos oisposilivos giaficos
on sinullanoo. Naluialnonlo aponas un oos oisposilivos giaficos acoilaia as oioons giaficas on
caoa nononlo, quo o oosignaoo poi J..u...u n&n|. Quanoo so aLion vaiios oisposilivos,
foinan una soquoncia nunoiaoa cujos nonos ooloininan o lipo oo oisposilivo on caoa
posiao.
Os piincipais conanoos iolacionaoos con oisposilivos giaficos nlliplos, o o iospoclivo
significaoo, sao os soguinlos:
X11() ALio una janola giafica on UNIX o on Miciosofl Winoows
12 Iolinas giaficas 02
windows() ALio una janola giafica on Miciosofl Winoows
postscript()
pictex() Caoa chanaoa a una funao oo conliolaooi oo oisposilivo aLio un novo
oisposilivo giafico, o, poilanlo, aciosconla un olononlo a lisla oo oisposilivos,
ao nosno lonpo quo o llino chanaoo passa a soi o oisposilivo aclual, paia o
qual soiao onviaoos os iosullaoos giaficos. (Nalgunas plalafoinas o possvol quo
oxislan oulios oisposilivos oisponvois).
dev.list() Infoina o nnoio o o nono oo looos os oisposilivos aclivos. O oisposilivo na
posiao 1 oosla lisla o sonpio un J..u...u n&|u quo nao acoila qualquoi
oioon giafica.
dev.next()
dev.prev() Infoina qual o nono o o nnoio oo oisposilivo giafico soguinlo o piovio on
iolaao ao oisposilivo aclual.
dev.set(which = k) Iooo usai-so paia nuoai o oisposilivo giafico paia o quo osla
na l.osina posiao oa lisla oo oisposilivos. Infoina qual o nono o o nnoio
oosso oisposilivo.
dev.off(k) Lncoiia o oisposilivo giafico quo osla na l.osina posiao oa lisla oo oisposilivos.
Iaia alguns oisposilivos, cono os poslsciipl, ou finalizaia o giafico, inpiininoo-
o oo soguioa, ou loininaia a giavaao on fichoiio LIS paia posloiioi
inpiossao, ooponoonoo oo cono o oisposilivo foi iniciaoo.
dev.copy(device, ..., which=k)
dev.print(device, ., which=k) Ioaliza una copia oo oisposilivo l. Aqui, a oxpiossao
J. o una funao oo oisposilivo, cono u..:., con aigunonlos aoicionais
so lal foi nocossaiio, ospocificaoos poi ... . A funao ucr.r1nI]} o sinilai, nas
o oisposilivo copiaoo o fochaoo inooialanonlo, o quo finaliza as acoos
ponoonlos, quo so ioalizan inooialanonlo.
graphics.off() Lncoiia looos os oisposilivos giaficos, oxcoplo o oisposilivo nulo.
12.7 Grficos dinmicos
I nao oispoo (aclualnonlo) oo nonhuna funao oo giaficos oinanicos, poi oxonplo paia
iooai una nuvon oo ponlos, ou aclivai o oosaclivai ponlos inloiaclivanonlo. Conluoo, nuilas
capacioaoos giaficas oinanicas oslao oisponvois no sislona Xgobi oo Swayno, Cool o Luja,
oisponvol on
hllp:www.iosoaich.all.conaioasslalxgoLi
as quais so pooo acoooi oosoo I aliavos oa LiLlioloca xgobi.
Xgobi osla aclualnonlo oisponvol paia o anLionlo X-Winoows, lanlo on UNIX cono on
Miciosofl Winoows, o oxislon inloifacos con I oisponvois on anLos os sislonas.
Aponoico A Un oxonplo oo sossao 08
Apndice A Um exemplo de sesso
A sossao soguinlo piolonoo apiosonlai, usanoo-os, alguns aspoclos oo anLionlo I. Muilos
ooslos aspoclos lalvoz sojan oosconhocioos o, piovavolnonlo, onignalicos ao piincpio, nas ossa
sonsaao nao laioaia on oosapaiocoi. A sossao osla olaLoiaoa paia o sislona UNIX, sonoo
piovavol quo os ulilizaooios on anLionlo Miciosofl Winoows lonha oo piocoooi a alguns
poquonos ajuslos.
Liguo o loininal o inicio o anLionlo oo janolas. Dovoia loi o fichoiio
morloy.fab` no oiiocloiio oo liaLalho; caso nao o lonha, oovo copia-lo (oo
oiiocloiio Lasooala na osliuluia oo oiiocloiios oo I) anlos oo iniciai a sossao
oo liaLalho.
$ R Inicia o piogiana I, o apaioco a nonsagon inicial.
(Ioi conooioaoo o paia ovilai confusao, oonlio oo I nao nosliaionos o
snLolo oo sislona, na pailo osquoioa oos conanoos)
help.start() Inicia o inloifaco H1ML paia a ajuoa soLio os conanoos (ulilizanoo o
navogaooi WLL oisponvol no conpulaooi). Dovoia fazoi una Liovo oxploiaao
oas capacioaoos oosla ulilioaoo. Mininizo a janola oo ajuoa o conlinuo a sossao.
x <- rnorm(50)
y <- rnorm(x) Goia oois vocloios aloaloiios, conlonoo caoa un oolos 0 valoios
psouoo-aloaloiios oLlioos oo una oisliiLuiao noinal (0,1), ainazonanoo oslos
valoios nos vocloios x o y.
plot(x,y) Goia un giafico oo ponlos no plano (x,y). Apaioco aulonalicanonlo una janola
giafica con o oiagiana oo oispoisao.
ls() Apiosonla a lislagon oos nonos oos oLjoclos oxislonlos no nononlo aclual no
ospao oo liaLalho oo I.
rm(x,y) Llinina os oLjoclos x o y.
x <- 1: 20 Ciia o vocloi x con a soquoncia (1, 2,..., 20).
w <- 1 + sqrt(x)/2 Ciia o vocloi w con os oosvios lpicos ponooiaoos.
dummy <- data.frame(x=x, y=x + rnorm(x)*w)
dummy Ciia a folha oo oaoos ounny con ouas colunas, x o y, o visualiza-a.
fm <- lm(y ~ x, data=dummy)
summary(fm) Calcula a iogiossao linoai sinplos oo y soLio x o apiosonla o iosullaoo.
fm1 <- lm(y ~ x, data=dummy, weight=1/w^2)
summary(fm1) Ja quo so conhocon os oosvios lpicos, pooo ioalizai-so una iogiossao
ponooiaoa.
Aponoico A Un oxonplo oo sossao 04
attach(dummy) Conocla a folha oo oaoos, oo nooo quo as suas colunas apaiocon
lislaoas cono vaiiavois.
rlf <- lowess(x,y) Calcula una iogiossao local nao paianoliica.
plot(x, y) Diagiana oo oispoisao slanoaio.
lines(x, lrf$y) Aciosconla a linha oo iogiossao local nao paianoliica ao giafico.
abline(0, 1, lty=3) Aciosconla a voioaooiia linha oo iogiossao (inloicopao=0,
ooclivo=1) ao giafico (lly=8: linha oo lipo ponloaoo).
abline(coef(fm)) Aciosconla a iocla oo iogiossao linoai sinplos.
abline(coef(fm1), col=red) Aciosconla a iocla oo iogiossao ponooiaoa (linha oo coi
voinolha).
detach() Ionovo a folha oo oaoos oo caninho oo Lusca.
plot(fitted(fm), resid(fm), xlab=Valores estimados,
ylab=Resduos, main=Resduos versus Valores estimados)
Un giafico oo oiagnoslico oa iogiossao paia invosligai a possvol
holoioscooaslicioaoo. Aciosconla llulo o nonos aos oixos oo giafico.
qqnorm(resid(fm), main=Resduos por quantil)
Giafico on papol pioLaLilslico noinal paia conpiovai assinoliia, achalanonlo
o oaoos anonalos (nao o nuilo lil noslo caso).
rm(fm, fm1, lrf, x, dummy) Llinina os oLjoclos oosciininaoos.
Na pioxina sossao iiao usai-so os oaoos classicos oo Michaolson o Moiloy paia nooii a
volocioaoo oa luz.
file.show(morley.tab) Visualiza o conlooo oo fichoiio. Opcional.
mm <- read.table(morley.tab)
mm Lo os oaoos oo fichoiio noiloy.laL" paia una folha oo oaoos con o nono nn;
visualiza o conlooo oo nn. Lxislon cinco oxpoiioncias (coluna Lxpl) o caoa
una conlon 20 oLsoivaoos (ioonlificaoos na coluna Iun); a coluna Spooo
conlon a volocioaoo oa luz nooioa on caoa caso, cooificaoa nuna unioaoo
apiopiiaoa.
mm$Expt <- factor(mm$Expt)
mm$Run <- factor(mm$Run) 1iansfoina as colunas Lxpl o Iun on facloios.
attach(mm) Conocla a folha oo oaoos nn a posiao 2 (poi oofoilo) oo caninho oo Lusca.
plot(Expt, Speed, main="Velocidade da luz", xlab="Experiencia No.")
Conpaia as cinco oxpoiioncias usanoo oiagianas oo oxlionos-o-quailis.
fm <- aov(Speed~Run+Expt, data=mm)
summary(fm) Analisa os oaoos cono un oolinoanonlo on Llocos aloaloiios, consiooianoo as
oxpoiioncias o as soiios (nnoio oas oLsoivaoos) cono os facloios oo onsaio.
fm0 <- update(fm, .~. - Run)
Aponoico A Un oxonplo oo sossao 0
anova(fm0, fm) Ajusla un suL-nooolo, onilinoo Iuns`, o conpaia os oois nooolos
usanoo una analiso oo vaiiancia foinal.
detach()
rm(fm, fm0) Dosconocla a folha oo oaoos o olinina os oLjoclos fn, fn0.
Do soguioa iionos apiosonlai algunas capacioaoos giaficas: giaficos oo lipo conloui inago.
x <- seq(-pi, pi, len=50)
y <- x x o y sao oois vocloios cujos valoios oslao igualnonlo ospaaoos no inloivalo
x S S s s .
f <- outer(x, y, function(x, y) cos(y)/(1+x^2))
f o una naliiz quaoiaoa, con as linhas o as colunas inooxaoas poi x o y,
iospoclivanonlo, oos valoios oa funao
2
cos( ) /(1 ) v x +
oldpar <- par(no.readonly=TRUE)
par(pty=s) Guaioa os aigunonlos giaficos na lisla olopai, o nooifica o paianolio
ply (zona oo oosonho) paia o foinalo s" (quaoiaoo).
contour(x, y, f)
contour(x, y, f, nlevels=15, add=TRUE)
Ciia un giafico oo conloino (ou cuivas oo nvol) oa naliiz f. Aoiciona nais
linhas paia naioi oolalho.
fa <- (f -t(f))/2 fa o a pailo assinoliica` oo f. (l(f) o a liansposla oo f).
contour(x, y, fa, nint=15) Dosonha un napa oo cuivas oo nvol...
par(oldpar) ... o iocupoia os paianolios giaficos oiiginais.
image(x, y, f)
image (x, y, fa) Ciia giaficos oo alla oonsioaoo.
objects()
rm(x, y, f, fa) Lislagon oos oLjoclos oxislonlos no ospao oo liaLalho; ionovo os
oLjoclos ospocificaoos anlos oo piossoguii.
Ln I pooon ofocluai-so opoiaoos aiilnolicas con nnoios conploxos. 1i o a pailo
inaginaiia i.
th <- seq(-pi, pi, len=100)
z <- exp(1i*th)
par(pty="s")
plot(z, type="l") A iopiosonlaao giafica oo un nnoio conploxo consislo on
iopiosonlai a pailo inaginaiia voisus a pailo ioal oo valoi. Noslo caso, oLlon-so
un ciculo.
w <- rnorm(100) + rnorm(100)*1i
Suponha quo piolonoo goiai ponlos psouoo-aloaloiios oonlio oo ciculo unilaiio.
Una piinoiia lonlaliva consislo on goiai valoios conploxos cujas pailos ioal o
inaginaiia, iospoclivanonlo, piocooan oo una oisliiLuiao noinal (0,1) ...
Aponoico A Un oxonplo oo sossao 00
w <- ifelse(Mod(w)>1, 1/w,w)
... o oo soguioa, suLsliluii os ponlos quo caion foia oo ciculo polos sous
invoisos.
plot(w, xlim=c(-1,1), ylim=c(-1,1), pch=+, xlab=x, ylab=y)
lines(z) 1ooos os ponlos oslao oonlio oo ciculo unilaiio, nas a sua oisliiLuiao nao o
unifoino.
w <- sqrt(runif(100))*exp(2*pi*runif(100)*1i)
plot(w, xlim=c(-1,1), ylim=c(-1,1), pch=+, xlab=x, ylab=y)
lines(z) Lslo sogunoo nolooo uliliza a oisliiLuiao unifoino. Noslo caso, os ponlos
apiosonlan una oisliiLuiao nais unifoinononlo ospaaoa oonlio oo ciculo.
rm(th, w, z) Do novo so olininan os oLjoclos.
q() 1oinina o piogiana I. O piogiana poigunla so piolonoo guaioai o ospao oo
liaLalho. Ja quo so liala aponas oo una sossao oo apiosonlaao, piovavolnonlo
iosponooia quo nao.
Aponoico L Lxocuao oo I 07
Apndice B Execuo de R
B.1 Execuo de R em ambiente Unix
A oioon I` uliliza-so paia oxoculai o piogiana I, con possiLilioaoo oo oai vaiias opoos
conplononlaios, oa foina:
R [opes] [<entrada] [>saida]
(on quo n:nJn o .n.Jn so iofoion aos nonos oos fichoiios, opcionais, oo onliaoa o oo saoa), ou
aliavos oo inloifaco R CMD, paia acoooi a vaiias foiianonlas oo I (poi oxonplo, paia
piocossai aiquivos con foinalo oo oocunonlaao oo I ou paia nanipulai LiLliolocas) quo nao
oslao oosonvolvioas paia soion usaoas oiioclanonlo`.
Muilas opoos conliolan o quo ocoiio ao iniciai o ao loininai una sossao oo I. O
nocanisno oo iniciaao (ulilizo IcI]SIurIu}` paia nais infoinaoos) o o soguinlo:
- A nao soi quo so ospocifiquo a opao --no-environ`, I piocuia o aiquivo
.Hcnr1ron` no oiiocloiio aclual; so nao o onconlia, Lusca o aiquivo quo so ospocifica
na vaiiavol oo anLionlo R_ENVIRON, o so osla vaiiavol nao oxislo, piocuia o aiquivo
.Hcnr1ron` no oiiocloiio oo onliaoa (|un) oo ulilizaooi. O piinoiio ooslos aiquivos
quo foi onconliaoo o oxoculaoo, oofininoo as vaiiavois oo anLionlo. As vaiiavois sao
oxpoilaoas aulonalicanonlo, oosoo quo sojan ospocificaoas una poi linha, on linhas oo
lipo nono=valoi`. As vaiiavois quo so pooon oofinii incluon R_PAPERSIZE
(lananho poi oofoilo paia o papol), R_PRIMTCMD (o conanoo oo inpiossao poi
oofoilo), R_LIDS (paia ospocificai o conjunlo oo oiiocloiios conlonoo as LiLliolocas
oisponvois), o R_VSIZE o R_NSIZE (voja aoianlo).
- Do soguioa, I piocuia o fichoiio quo oofino o poifil oo iniciaao gloLal, a nao soi quo na
linha oo conanoo so oo a opao --no-site-file`. O nono ooslo fichoiio o oofinioo
pola vaiiavol R_PROFILE. So osla vaiiavol nao oslivoi oofinioa, o assunioo o fichoiio
$R-HOME]ofc.]Rrofilo`.
- Soguioanonlo, a nao soi quo so ospocifiquo a opao --no-init-file`, I piocuia un
fichoiio chanaoo .Hro]1Ic` no oiiocloiio coiionlo, ou no oiiocloiio oo onliaoa oo
ulilizaooi (nosla oioon), o oxocula-o.
- So oxislo o fichoiio .HuuIu` no oiiocloiio coiionlo, o oxoculaoo (salvo so livoi oaoo a
opao --no-restore`).
- Finalnonlo, so oxislo una funao oosignaoa .11rsI]}`, oxocula-a. Lsla funao, lal cono
a funao .1usI]}` quo o oxoculaoa ao saii oo piogiana) pooo soi oofinioa nos fichoiios
oo onliaoa ou no fichoiio .H1uIu` alias noncionaoos.
Alon ooslas ospocificaoos, oxislon opoos paia conliolai a nonoiia oisponvol paia a
sossao oo I (voja IcI]1cnor}` paia nais infoinaao). I uliliza un nooolo oo nonoiia
oslalico. Islo significa quo, ao iniciai, o sislona opoialivo iosoiva una quanlioaoo fixa oo
Aponoico L Lxocuao oo I 0$
nonoiia, quo nao pooo alloiai-so ouianlo a oxocuao. Assin, pooo aconlocoi quo nao oxisla
nonoiia suficionlo on ooloininaoo nononlo oa sossao, poi oxonplo paia caiiogai un fichoiio
onoino oo oaoos. As opoos --nsize` o --vsize` (ou as vaiiavois oo anLionlo R_NSIZE` o
R_VSIZE`) pooon usai-so paia conliolai a quanlioaoo oo nonoiia oisponvol paia oLjoclos oo
lananho fixo o vaiiavol.
As opoos quo so pooon ospocificai na linha oo conanoo sao:
--help
-h Moslia una poquona nonsagon oo ajuoa o conlinua.
--version Moslia a infoinaao oa voisao o conlinua.
RHOME Moslia o liajoclo oo oiiocloiio inicial (hono) oo I o conlinua. Lxcopluanoo os
fichoiios oo ajuoa o o aiquivo oxoculavol oo chanaoa oo piogiana, a inslalaao
oo I coloca looos os oulios fichoiios (oxoculavois, LiLliolocas, olc.) noslo
oiiocloiio.
--save
--no-save Lspocifica so oovo guaioai ou nao o ospao oo liaLalho ao loininai a sossao.
Ln nooo inloiaclivo, so naoa so ospocificai, o piogiana poigunla so so piolonoo
guaioai ou nao oslo ospao. Ln piocossanonlo poi lolo, o oLiigaloiio ospocificai
una ooslas opoos.
--no-environ Nao piocuia qualquoi oos aiquivos alias noncionaoos paia oofinii as
vaiiavois oo anLionlo.
--no-site-file Nao caiioga o poifil gloLal ao iniciai o piogiana.
--no-init-file Nao caiioga o poifil oo ulilizaooi ao iniciai o piogiana.
--restore
--no-restore Lspocifica so oovo ou nao iocupoiai o ospao oo liaLalho piovianonlo
guaioaoo no aiquivo .Ioala` no oiiocloiio coiionlo. Ioi oofoilo, o
iocupoiaoo.
--vanilla ConLina as opoos --no-save`, --no-environ`, --no-site-file`,
--no-init-file` o --no-restore`.
--no-readline Dosacliva a ooiao oo conanoos aliavos oo ioaolino. Lsla opao oovo
ulilizai-so quanoo so oxocula I on conjunlo con Lnacs ulilizanoo a LiLlioloca
ESS (Lnacs Spoals Slalislics"). Voja Aponoico C [Loiloi oo conanoos[, pag.
102, paia nais infoinaao.
--v-size=N Lspocifica a quanlioaoo oo nonoiia iosoivaoa paia oLjoclos oo lananho
vaiiavol, oofininoo o lananho oo vocloi hoap` paia N Lylos. N oovo soi un
valoi inloiio ou un valoi inloiio loininanoo on M`, K` ou l`, quo significan
iospoclivanonlo Moga` (2`20), Kilo` (2`10) ou lilo` (1000) Lylos.
Aponoico L Lxocuao oo I 00
--n-size=N Lspocifica a quanlioaoo oo nonoiia iosoivaoa paia oLjoclos oo lananho fixo.
Sao valioas as consiooiaoos foilas paia --n-v-size`.
--quiet
--silent
-q Nao o nosliaoa a nonsagon inicial oo copyiighl`.
--slave Lxocula I con o nnino oo saoas possvois. Lsla opao o lil quanoo so uliliza
I paia ofocluai calculos cujos iosullaoos sao as onliaoas paia oulios piogianas.
--verbose Moslia o naxino oo saoas possvois, o alon oisso, coloca a opao
:hu.=J111. I uliliza osla opao paia conliolai so oovo apiosonlai
nonsagons oo oiagnoslico.
--debugger=depurador
- d depurador Lxocula I a pailii oo piogiana oo oopuiaao oopuiaooi`. Caso
oxislan oulias opoos na linha oo conanoo, sao ignoiaoas; Qualquoi oulia
opao, so nocossaiia, oovo oai-so quanoo so inicia I a pailii oo piogiana oo
oopuiaao.
--gui=tipo Uliliza lipo` cono o inloifaco giafico (nolo-so quo lanLon inclui os giaficos
inloiaclivos). Os valoios possvois paia lipo` sao X11 (poi oofoilo) o GNOME,
oosoo quo oslo supoilo osloja oisponvol.
Nolo quo o possvol io-oiioccionai a onliaoa (<entrada) o a saoa (>saida) .
I CMD poinilo ulilizai oivoisas foiianonlas quo sao lois on ulilizaao conjunla con I,
nas quo nao oslao concoLioas paia soion usaoas oiioclanonlo a pailii oa linha oo conanoo. A
foina goial oo usa-las o:
R CMD comando argumentos
onoo unnnJu` o o nono oa foiianonla ou aplicaao o n:j&nnu.` sao os aigunonlos quo so
piolonoon passai a ossa aplicaao.
As foiianonlas oisponvois sao:
BATCH Lxocula I on piocossanonlo poi lolos.
COMPILE Conpila aiquivos paia usai con I.
SHLIB Conslioi LiLliolocas paililhaoas oo sislona opoialivo paia caiioganonlo
oinanico.
INSTALL Inslala LiLliolocas.
REMOVE Ionovo LiLliolocas.
build Conslioi LiLliolocas.
check Voiifica LiLliolocas.
Rdconv Convoilo fichoiios oo foinalo Io paia oulios foinalos, incluinoo H1ML, Nioff,
LA1LX, loxlo ASCII son foinalo, o foinalo S.
Aponoico L Lxocuao oo I 100
Rd2dvi Convoilo fichoiios oo foinalo Io paia o foinalo DVIIDF.
Rd2txt Convoilo fichoiios oo foinalo Io paia o foinalo loxlo.
Rdindex Lxliai a infoinaao paia os noicos oos fichoiios Io.
Sd2Rd Convoilo fichoiios oo foinalo S on foinalo Io.
As piinoiias cinco aplicaoos (LA1CH, COMIILL, SHLIL, INS1ALL, ILMOVL) pooon
soi oxoculaoas oiioclanonlo son usai a opao CMD, islo o, na foina:
R comando argumentos
Faa o conanoo:
R CMD comando --help
paia oLloi nais infoinaoos iolacionaoas con caoa una ooslas foiianonlas.
Aponoico L Lxocuao oo I 101
B.2 Execuo de R em ambiente Microsoft Windows
O piocooinonlo oo inicio on Miciosofl Winoows o nuilo sinilai ao oosciilo paia anLionlo
UNIX, nas nao nocossaiianonlo ioonlico. Lxislon ouas voisoos oo I paia Winoows: una
Lasoaoa on janolas oo lipo MDI (cujo piogiana oxoculavol o Rgni.oxo) o oulia voisao ooslinaoa
a coiioi on nooo loininal ou janola oo DOS (cujo piogiana oxoculavol o Rform.oxo, nais
vocacionaoa paia piocossanonlo poi lolos).
Lxislon vaiias opoos paia conliolai o quo ocoiio ao iniciai o ao loininai una sossao oo I.
O nocanisno oo aiianquo (ulilizo IcI]SIurIu}` paia infoinaao nais oolalhaoa) o oosciilo
on soguioa. As iofoioncias ao J.::.u .n..n|` (|un) oovon soi claiificaoas, pois osla noao
non sonpio osla oofinioa on Winoows. So a vaiiavol oo anLionlo R_USER osla oofinioa, osla
oofino qual o oiiocloiio inicial. Caso conliaiio, oslo o oofinioo pola vaiiavol oo anLionlo HOME,
so osla oofinioa. So nao, soia oofinioo polas vaiiavois HOMEDRIVE o HOMEPATH (on
anLionlo Winoows N1). So nonhuna ooslas vaiiavois oslivoi oofinioa, onlao o oiiocloiio inicial
o o oiiocloiio a pailii oo qual so iniciai o piogiana.
- A nao soi quo so ospocifiquo a opao --no-environ`, I piocuia o fichoiio
.Renviron` no oiiocloiio aclual; nao o onconlianoo, piocuia-o no oiiocloiio inicial oo
ulilizaooi. So onconlia algun ooslos aiquivos, oxocula-o o oofino as vaiiavois oo
anLionlo. As vaiiavois sao oxpoilaoas aulonalicanonlo, oosoo quo sojan ospocificaoas
una poi linha, on linhas oo lipo nono=valoi`. As vaiiavois quo so pooon oofinii
incluon R_PAPERSIZE (lananho poi oofoilo paia o papol), R_PRIMTCMD (o
conanoo oo inpiossao poi oofoilo), R_LIDS (paia ospocificai o conjunlo oo oiiocloiios
conlonoo as LiLliolocas oisponvois), o R_VSIZE o R_NSIZE (voja aoianlo).
- Do soguioa, I piocuia o fichoiio quo oofino o poifil oo iniciaao gloLal, a nao soi quo na
linha oo conanoo so oo a opao --no-site-file`. O nono ooslo fichoiio o oofinioo
pola vaiiavol R_PROFILE. So osla vaiiavol nao oslivoi oofinioa, o assunioo o fichoiio
$R-HOME]ofc.]Rrofilo`.
- Soguioanonlo, a nao soi quo so ospocifiquo a opao --no-init-file`, I piocuia un
fichoiio chanaoo .Rrofilo` no oiiocloiio coiionlo, ou no oiiocloiio oo onliaoa oo
ulilizaooi (nosla oioon), o oxocula-o.
- So oxislo o fichoiio .Rdafa` no oiiocloiio coiionlo, o oxoculaoo (salvo so livoi oaoo a
opao --no-restore`).
- Finalnonlo, so oxislo una funao oosignaoa .Firsf()`, oxocula-a. Lsla funao, lal cono
a funao .Lasf()` quo o oxoculaoa ao saii oo piogiana) pooo soi oofinioa nos fichoiios
oo onliaoa ou no fichoiio .RDafa` alias noncionaoos.
Alon ooslas ospocificaoos, oxislon opoos paia conliolai a nonoiia oisponvol paia a
sossao oo I (voja IcI]1cnor}` paia nais infoinaao). I uliliza un nooolo oo nonoiia
oslalico. Islo significa quo, ao iniciai, o sislona opoialivo iosoiva una quanlioaoo fixa oo
nonoiia, quo nao pooo alloiai-so ouianlo a oxocuao. Assin, pooo aconlocoi quo nao oxisla
Aponoico L Lxocuao oo I 102
nonoiia suficionlo on ooloininaoo nononlo oa sossao, poi oxonplo paia caiiogai un fichoiio
onoino oo oaoos. As opoos --nsize` o --vsize` (ou as vaiiavois oo anLionlo R_NSIZE` o
R_VSIZE`) pooon usai-so paia conliolai a quanlioaoo oo nonoiia oisponvol paia oLjoclos oo
lananho fixo o vaiiavol.
As opoos quo so pooon ospocificai na linha oo conanoo sao:
--version Moslia a infoinaao oa voisao o conlinua.
--mdi
--sdi
--no-mdi Conliola so Igui soia oxoculaoo cono un piogiana MDI (poi oofoilo), onoo
caoa nova janola aLoila osla conlioa oonlio oa janola piincipal, ou cono un
piogiana SDI, on quo caoa janola (consola, giaficos o iosullaoos) apaioco oo
nooo inooponoonlo no osciiloiio.
--save
--no-save Lspocifica so oovo guaioai ou nao o ospao oo liaLalho ao loininai a sossao.
Ln nooo inloiaclivo, so naoa so ospocificai, o piogiana poigunla so so piolonoo
guaioai ou nao oslo ospao. Ln piocossanonlo poi lolo, o oLiigaloiio ospocificai
una ooslas opoos.
--restore
--no-restore Lspocifica so oovo ou nao iocupoiai o ospao oo liaLalho piovianonlo
guaioaoo no aiquivo .Rdafa` no oiiocloiio coiionlo. Ioi oofoilo, o
iocupoiaoo.
--no-site-file Nao caiioga o poifil gloLal ao iniciai o piogiana.
--no-init-file Nao caiioga o poifil oo ulilizaooi ao iniciai o piogiana.
--no-environ Nao piocuia qualquoi oos aiquivos alias noncionaoos paia oofinii as
vaiiavois oo anLionlo.
--vanilla ConLina as opoos --no-save`, --no-environ`, --no-site-
file`, --no-init-file` o --no-restore`.
-q
--quiet
--silent Nao o nosliaoa a nonsagon inicial oo copyiighl`.
--slave Lxocula I con o nnino oo saoas possvois.
--verbose Moslia o naxino oo saoas possvois.
--ess Iiopaia Iloin paia uso on nooo I-infoiioi on LSS.
Aponoico C Loiloi oo conanoos 108
Apndice C Editor de comandos
C.1 Preliminares
So a LiLlioloca oo GNU roadlino osla oisponvol quanoo so inslala o configuia I on
anLionlo UNIX, fica oisponvol un ooiloi oo conanoos inloino quo poinilo iocupoiai, ooilai o
vollai a oxoculai as oioons piovianonlo ulilizaoas.
Lslo ooiloi pooo oosaclivai-so con a opao --no-readline` ao iniciai o piogiana (o
quo poinilo ulilizai LSS
1
).
A voisao paia Miciosofl Winoows oispoo oo un ooiloi oo conanoos nais facil; voja o
lopico Consolo` no nonu Hol` oo piogiana Rgni.
Quanoo so uliliza I con as capacioaoos oo ooiao oo ioaolino, as opoos oosciilas oo
soguioa fican oisponvois.
Muilas oas oioons oo ooiloi oo conanoos ulilizan caiacloios un:u| o 1n. Os caiacloios
Conliol, lais cono Conliol-n, oLlon-so nanlonoo caiiogaoa a locla C1IL onquanlo so
caiioga a locla n, o oo soguioa soia iopiosonlaoo pola nolaao C-n. Os caiacloios Mola, lais
cono Mola-L, oLlon-so caiioganoo a locla ML1A o oo soguioa (apos sollai) a locla L, o
soia iopiosonlaoo pola nolaao M-L. So o loclaoo nao lon a locla ML1A pooon oLloi-so os
caiacloios Mola con a soquoncia oo ouas loclas quo conoa con a locla LSC. Islo o, paia oLloi
M-L, oovoia fazoi LSC L.As soquoncias LSC lanLon pooon ioalizai-so nos loclaoos con
a locla ML1A. Dovo loi-so on alonao quo os caiacloios Mola oislinguon onlio ninsculas
o naisculas.
C.2 Aces de edio
O piogiana I consoiva o hisloiial oo conanoos quo so oxoculan, incluinoo as linhas oo
oiio, o quo poinilo iocupoiai as linhas oo conanoos anloiioios, nooifica-las so lal foi nocossaiio,
o loinai a oxocula-las cono novas oioons. No oslilo oo ooiao onacs qualquoi caiacloi quo so
oigilo o insoiioo na posiao oo cuisoi, aiiaslanoo os caiacloios a oiioila oo cuisos. No oslilo oo
ooiao vi o nooo oo insoiao oo caiacloios o iniciaoo pola soquoncia M-i ou M-a, soguinoo-so a
insoiao oo caiacloios; o nooo oo insoiao o loininaoo caiioganoo a locla LSC.
Quanoo so caiioga a locla IL1, a oioon on ooiao o oxoculaoa.
Do soguioa iosunon-so algunas oas acoos possvois con o ooiloi oo conanoos. L pona quo
nao so consigan nosliai algunas capacioaoos, lais cono o aiiaslanonlo oo cuisoi con as loclas
oiioccionais.
1
ALiovialuia oo ooiloi oo loxlo Lnacs Spoals Slalislics`. Voja a oiiocao UIL
hllp:oss.slal.wisc.oou
Aponoico C Loiloi oo conanoos 104
C.3 Resumo do editor de linha de comandos
Recuperao dos comandos anteriores e deslocamentos verticais
C-p Iocupoia o conanoo anloiioi (ioliocooo no hisloiico oo conanoos).
C-n Iocupoia o conanoo posloiioi (avana no hisloiico oo conanoos).
C-i loxlo Iocupoia o llino conanoo quo conlon loxlo`.
Na naioi pailo oos loininais, o possvol ulilizai as loclas oiioccionais voilicais sola paia
cina` o sola paia Laixo` on voz oas soquoncias C-p o C-n, iospoclivanonlo.
Movimonfos laforais do cnrsor
C-a Vai paia o incio oa linha.
C-o Vai paia o fin oa linha.
M-L Ioliocooo una palavia.
M-f Avana una palavia.
C-L Ioliocooo un caiacloi.
C-f Avana un caiacloi.
Na naioi pailo oos loininais, o possvol ulilizai as loclas oiioccionais hoiizonlais sola paia
a oiioila` o sola paia osquoioa` on voz oas soquoncias C-L o C-f, iospoclivanonlo.
Edio
loxlo Insoio loxlo` na posiao oo cuisoi.
C-f loxlo Insoio loxlo a fionlo oo cuisoi.
DLL Llinina o caiacloi anlos (a osquoioa) oo cuisoi.
C-o Llinina o caiacloi na posiao oo cuisoi.
M-o Llinina o ioslo oa palavia oosoo a posiao oo cuisoi, o guaioa a pailo
olininaoa.
C-l Llinina o ioslo oa linha oosoo a posiao oo cuisoi, o guaioa a pailo olininaoa.
C-y Insoio o llino loxlo guaioaoo.
C-l 1ioca o caiacloi na posiao oo cuisoi con o soguinlo.
M-l SuLslilui o ioslo oa palavia poi ninsculas.
M-c SuLslilui o ioslo oa palavia poi naisculas.
IL1 Lxocula o conanoo on ooiao.
Ao caiiogai IL1 loinina-so a ooiao oa linha oo conanoo.
Aponoico D noico oo funoos o vaiiavois 10
Apndice D Indice de funes e variveis
-
- ...................................................................... 9
!
! .................................................................... 11
! .................................................................... 11
&
& .................................................................... 11
&&.................................................................. 50
* ...................................................................... 9
.
. .................................................................... 69
.First ...............................................................61
.Last() .............................................................61
.Rdata .............................................................61
.Rprofile..........................................................61
/
/ ...................................................................... 9
:
: .................................................................... 10
?
? ...................................................................... 4
^
^ ...................................................................... 9
j
j .................................................................... 11
jj .................................................................... 50
~
~ .................................................................... 64
+
+ ...................................................................... 9
<
< .................................................................... 11
<- ..................................................................... 8
<<- .................................................................. 55
<.................................................................... 11
...................................................................... 8
.................................................................... 11
>
> .................................................................... 11
->..................................................................... 8
> ................................................................... 11
A
abline.............................................................. 51
ace .................................................................. 77
add1................................................................ 67
anova.............................................................. 62
aov.................................................................. 68
aperm............................................................. 27
array............................................................... 20
as.data.frame ................................................. 35
as.vector ......................................................... 30
attach.............................................................. 35
attr.................................................................. 17
attributes ........................................................ 16
avas ................................................................ 77
axis ................................................................. 81
B
boxplot............................................................ 47
break .............................................................. 51
bruto............................................................... 77
C
c ...................................................................... 8
C .................................................................... 64
cbind............................................................... 24
coef................................................................. 29
coefficients..................................................... 82
contour........................................................... 80
contrasts......................................................... 66
coplot.............................................................. 51
cos .................................................................... 9
crossprod........................................................ 24
cut................................................................... 31
D
data................................................................. 14
data.entry ....................................................... 41
data.frame...................................................... 18
density ............................................................ 44
detach............................................................. 35
dev.list ............................................................ 92
dev.next .......................................................... 92
dev.off............................................................. 91
dev.prev .......................................................... 92
dev.set............................................................. 92
deviance ......................................................... 67
diag................................................................. 28
dim ................................................................. 18
dotplot ............................................................ 80
drop1 ........................................................ 67, 69
Aponoico D noico oo funoos o vaiiavois 100
E
ecdf ................................................................. 44
eigen ............................................................... 28
else.................................................................. 50
Error............................................................... 59
exp .................................................................... 9
F
F ................................................................... 11
factor .............................................................. 19
FALSE............................................................ 11
fivenum........................................................... 43
for ................................................................... 50
formula........................................................... 67
G
glm.................................................................. 71
H
help ................................................................... 4
hist .................................................................. 44
I
identify............................................................ 84
if .................................................................... 50
ifelse................................................................ 50
image .............................................................. 80
is.na ................................................................ 11
is.nan.............................................................. 12
K
ks.test .............................................................. 46
L
legend ............................................................. 82
length................................................................ 9
levels ............................................................... 19
lines ................................................................ 44
list ..................................................................... 6
lm.................................................................... 66
lme .................................................................. 76
locator............................................................. 83
loess ................................................................ 77
log..................................................................... 9
lqs.................................................................... 77
lsfit .................................................................. 29
M
mars ................................................................ 77
max................................................................... 9
mean................................................................. 9
min.................................................................... 9
mode ............................................................... 16
A
AA................................................................... 11
AaA ................................................................ 10
ncol ................................................................. 27
next ................................................................. 51
nlm.................................................................. 74
nlme................................................................ 76
nrow ............................................................... 27
O
order................................................................. 9
ordered ........................................................... 21
outer ............................................................... 26
P
pairs................................................................ 79
par .................................................................. 17
paste ............................................................... 12
persp............................................................... 80
pictex.............................................................. 91
plot ................................................................. 18
pmax................................................................. 9
pmin ................................................................. 9
points.............................................................. 45
polygon........................................................... 82
postscript ........................................................ 88
predict ............................................................ 67
print.................................................................. 5
prod .................................................................. 9
Q
qqline.............................................................. 45
qqnorm........................................................... 45
qqplot.............................................................. 46
qr .................................................................... 29
R
range ................................................................ 9
rbind............................................................... 28
read.fwf .......................................................... 38
read.table ....................................................... 35
rep .................................................................. 11
repeat.............................................................. 50
resid................................................................ 29
residuals......................................................... 67
rm..................................................................... 6
Rprofile .......................................................... 61
S
scan ................................................................ 17
search............................................................. 37
seq .................................................................. 10
shapiro.test ..................................................... 46
sin..................................................................... 9
sink................................................................... 6
sort ................................................................... 9
source............................................................... 6
split ................................................................. 51
sqrt ................................................................... 9
stem................................................................ 43
step ................................................................. 67
sub.................................................................. 11
substring ........................................................ 12
sum................................................................... 9
summary ........................................................ 18
svd .................................................................. 28
Aponoico D noico oo funoos o vaiiavois 107
1
t .................................................................... 20
1 .................................................................... 11
t.test................................................................. 47
table ................................................................ 24
tan..................................................................... 9
tapply .............................................................. 19
text .................................................................. 77
title.................................................................. 83
tree.................................................................. 77
1RUE.............................................................. 11
U
unclass............................................................ 18
update ............................................................. 69
J
var .................................................................... 9
var.test ............................................................ 48
vector................................................................ 8
W
while............................................................... 50
wilcox.test....................................................... 48
X
x11.................................................................. 61
X11................................................................. 78
Aponoico L noico oo concoilos 10$
Apndice E Indice de conceitos
A
Acosso a oaoos inloinos............................40
Aclualizaao oo nooolos ajuslaoos...........00
Ajuslanonlo poi nninos quaoiaoos........20
nLilo......................................................$
Analiso oo vaiiancia..................................0$
Aigunonlos con nono..............................4
Assignaao..................................................$
AliiLulos...................................................10
Aulovaloios o aulovocloios.......................2
D
LiLliolocas...................................................8
C
Ciclos o oxocuao conoicional....................0
Classos oo un oLjoclo...............................1$
Concalonaao oo lislas..............................84
Conliaslos.................................................00
Conliaslos oo una o ouas anoslias..........40
D
Doconposiao on valoios singulaios.........2$
Doconposiao QI.....................................20
Dofiniao oo funoos..................................2
Doloininanlos...........................................2$
Diagiana oo caulo-o-folhas........................44
Diagiana oo oxlionos-o-quailis................40
Disposilivos giaficos..................................00
DisliiLuiao oo pioLaLilioaoos..................42
E
Llininai oLjoclos........................................0
Lspao oo liaLalho......................................0
Lxocuao conoicional.................................0
Lxpiossoos agiupaoas................................0
F
Facloios.....................................................10
Facloios oioonaoos....................................21
Fanlias.....................................................70
Folhas oo oaoos.........................................82
Foinulas...................................................08
Funao oo oonsioaoo.................................44
Funao oo oisliiLuiao onpiica...............44
Funoos gonoiicas......................................02
Funoos o opoiaooios aiilnolicos................0
G
Giaficos oinanicos....................................02
Giaficos Q-Q (quanlil-quanlil)..................4
H
Hislogiana................................................44
Honogonoioaoo oo vaiiancias, loslo oo.....4$
I
Inpoilaao oo fichoiios oxloinos...............8$
Inooxaao oo vaiiavois inooxaoas..............22
K
Kolnogoiogv-Sniinov, loslo oo................40
L
Lislas.........................................................82
M
Maliiz liansposla......................................27
Maliizos.....................................................22
Maxina voiosinilhana.............................70
Mninos quaoiaoos...................................20
Mninos quaoiaoos nao linoaios...............74
Aponoico L noico oo concoilos 100
Missing valuos...........................................11
Mooolos aoilivos........................................77
Mooolos on aivoio....................................77
Mooolos oslalslicos...................................08
Mooolos linoaios........................................00
Mooolos linoaios gonoializaoos..................00
Mooolos nislos..........................................70
O
OLjoclos....................................................10
Opoiaoos con naliizos............................2
Opoiaooios Linaiios...................................8
Oiionlaao paia oLjoclos...........................02
P
Iaianolios giaficos...................................$0
Ioisonalizaao oo anLionlo......................00
Iiooulo oxloino........................................2
Iiooulo naliicial......................................27
R
Iociclagon............................................0, 2
Iooiioccionanonlo oo onliaoa o saoa........0
Iogiossao con apioxinaao local.............77
Iogiossao ioLusla......................................77
S
Soquoncias iogulaios..................................10
Shapiio-Will, loslo oo...............................40
Sluoonl, loslo l oo.....................................47
T
1aLola oo fioquoncias................................80
1iansposla gonoializaoa oo una naliiz....27
1iajocloiia oo Lusca..................................87
V
Valoios on falla........................................11
Valoios pio-ooloininaoos..........................4
Vocloios alfanunoiicos..............................11
W
Wilcoxon, loslo oo.....................................4$
Aponoico F Iofoioncias 110
Apndice F Referncias
D.M.Lalos o D.G.Walls (10$$), Aun|.nn: 1j:...un nn|j... nnJ 1. |.n.un.. John
Wiloy \ Sons, Now Yoil.
Iichaio A. Locloi, John M. ChanLois o Allan I. Wills (10$$), J| A 5 1nnj&nj.
Chapnan \ Hall, Now Yoil. (Lslo livio o fioquonlononlo oosignaoo poi Lluo Lool").
John M. ChanLois o 1iovoi J. Haslio, Loiloios (1002), 5n...n| 1uJ|. .n 5. Chapnan \
Hall, Now Yoil. (Lslo livio o fioquonlononlo oosignaoo poi Whilo Lool").
Annollo J. DoLson (1000), n 1n:uJ&.un u n:n|..J 1.nn: 1uJ|.. Chapnan \ Hall,
Lonoon.
Ioloi McCullagh o John A. Nolooi (10$0), n:n|..J 1.nn: 1uJ|.. Socono ooilion,
Chapnan \ Hall, Lonoosn.
John A. Iico (100), 1n|nn.n| 5n.... nnJ 1nn nn|j.... Socono ooilion, DuxLuiy
Iioss, Lolnonl, CA.
S. D. Silvoy (1070), 5n...n| 1n:n. Ionguin, Lonoon.