Você está na página 1de 10

Análise Multivariada com o R - Aula 01

Joel M. Corrêa da Rosa

13 de abril de 2012

1 Introdução

Neste material apresentamos comandos no R associados com a análise multivariada de


um conjunto de dados. Vamos iniciar com a revisão de algumas operações com vetores e
depois falaremos sobre como resumir um conjunto multivariado.

2 Operação com Vetores

Criando um vetores colunas

> v1<-matrix(c(4,3,5,6,1))
> v2<-matrix(rep(1,dim(v1)[1]))

O produto interno de dois vetores

> t(v1)%*%v2

[,1]
[1,] 19

A operação realizada acima também poderia ser realizada com o comando

> crossprod(v1,v2)

[,1]
[1,] 19

1
O produto de um vetor coluna por um vetor linha

> M<-v1%*%t(v2)
> M

[,1] [,2] [,3] [,4] [,5]


[1,] 4 4 4 4 4
[2,] 3 3 3 3 3
[3,] 5 5 5 5 5
[4,] 6 6 6 6 6
[5,] 1 1 1 1 1

Vamos criar uma matriz quadrada apresentada no capı́tulo 2 de Johnson & Wichern

> A <- matrix(c(13,-4,2,-4,13,-2,2,-2,10),ncol=3)


> A

[,1] [,2] [,3]


[1,] 13 -4 2
[2,] -4 13 -2
[3,] 2 -2 10

Obtendo a inversa desta matriz

> Ainv<-solve(A)

Verificando que esta realmente trata-se da matriz inversa

> # Produto de A pela sua inversa


> AxAinv<-A%*%Ainv
> round(AxAinv)

[,1] [,2] [,3]


[1,] 1 0 0
[2,] 0 1 0
[3,] 0 0 1

> # Produdo da inversa de A por A


> AinvxA<-Ainv%*%A
> round(A)

2
[,1] [,2] [,3]
[1,] 13 -4 2
[2,] -4 13 -2
[3,] 2 -2 10

Calculando os autovalores e autovetores da matriz A

> # autovalores
> l<-eigen(A)$values
> l

[1] 18 9 9

> # autovetores
> P<-eigen(A)$vectors
> P

[,1] [,2] [,3]


[1,] 0.6666667 0.7453560 0.0000000
[2,] -0.6666667 0.5962848 0.4472136
[3,] 0.3333333 -0.2981424 0.8944272

Vamos verificar que a matriz P é ortogonal

> # Produto de P pela sua Transposta


> round(P%*%t(P))

[,1] [,2] [,3]


[1,] 1 0 0
[2,] 0 1 0
[3,] 0 0 1

> # Produto da transposta de P por P


> round(t(P)%*%P)

[,1] [,2] [,3]


[1,] 1 0 0
[2,] 0 1 0
[3,] 0 0 1

3
Decomposição espectral da matriz A

> P%*%diag(l)%*%t(P)

[,1] [,2] [,3]


[1,] 13 -4 2
[2,] -4 13 -2
[3,] 2 -2 10

3 Estudo do conjunto Boston Housing

O conjunto Boston Housing contém 14 variáveis associadas com o mercado imobiliário


americano no final da década de 70. O significado das variáveis encontra-se na tabela
abaixo.
crim taxa de criminalidade per capita
zn proporção de área residencial sobre 25000 metros quadrados
indus proporção de área destinada a comércio
chas variável indicadora (1-margem do rio, 0 caso contrário)
nox concentração em ppm de oxido nitrogênio
rm número médio de quartos por habitação
age proporção de unidades ocupadas por proprietários construı́das antes de 1940
dis distância média ponderada para os 5 centros comerciais de Boston
rad indice de acessibilidade para as rodovias radiais
tax
ptratio razão aluno/professor
black uma função quadrática da proporção de negros
lstat percentual de população de baixo status
medv valor mediano dos lares ocupados por proprietários em milhares de dólares

> library(MASS)
> data(Boston)

Vamos selecionar apenas as variáveis quantitativas, isto implica em excluir a variável chas.

> d<-subset(Boston,select=-chas)
> summary(d)

crim zn indus nox


Min. : 0.00632 Min. : 0.00 Min. : 0.46 Min. :0.3850

4
1st Qu.: 0.08205 1st Qu.: 0.00 1st Qu.: 5.19 1st Qu.:0.4490
Median : 0.25651 Median : 0.00 Median : 9.69 Median :0.5380
Mean : 3.61352 Mean : 11.36 Mean :11.14 Mean :0.5547
3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10 3rd Qu.:0.6240
Max. :88.97620 Max. :100.00 Max. :27.74 Max. :0.8710
rm age dis rad
Min. :3.561 Min. : 2.90 Min. : 1.130 Min. : 1.00
1st Qu.:5.886 1st Qu.: 45.02 1st Qu.: 2.100 1st Qu.: 4.00
Median :6.208 Median : 77.50 Median : 3.207 Median : 5.00
Mean :6.285 Mean : 68.57 Mean : 3.795 Mean : 9.55
3rd Qu.:6.623 3rd Qu.: 94.08 3rd Qu.: 5.188 3rd Qu.:24.00
Max. :8.780 Max. :100.00 Max. :12.127 Max. :24.00
tax ptratio black lstat
Min. :187.0 Min. :12.60 Min. : 0.32 Min. : 1.73
1st Qu.:279.0 1st Qu.:17.40 1st Qu.:375.38 1st Qu.: 6.95
Median :330.0 Median :19.05 Median :391.44 Median :11.36
Mean :408.2 Mean :18.46 Mean :356.67 Mean :12.65
3rd Qu.:666.0 3rd Qu.:20.20 3rd Qu.:396.23 3rd Qu.:16.95
Max. :711.0 Max. :22.00 Max. :396.90 Max. :37.97
medv
Min. : 5.00
1st Qu.:17.02
Median :21.20
Mean :22.53
3rd Qu.:25.00
Max. :50.00

Diagrama de dispersão multivariado.

> pairs(d[,c("rm","medv","lstat","age")])

5
10 20 30 40 50 0 20 60 100

● ● ●
●● ●●
●●● ●●●
● ●●
●●●● ● ●●●● ●●
●● ● ●● ● ●● ● ● ●

8
●●●●●
● ●●●●● ●● ●
●● ● ● ● ● ●
● ●● ● ● ● ●
● ●
●● ●●●● ●●
●● ● ●
●●
● ● ●● ●
●● ●●● ●
●● ●
● ●●

● ●● ●
● ●● ●● ●●● ●
●● ●●●● ●●● ●●
●●●
●●●●●
●● ●●●●●
●●
●● ●●● ● ●●
●● ● ● ●●● ● ● ●●
●●● ● ●●● ● ● ●●●●
●● ●●● ●●●● ●●●

7
● ● ●●● ●●
● ●
●●●●●●● ● ●

● ●
●●●● ●
● ● ● ●●● ● ●●●●●● ●●● ●
●● ● ●●
● ●● ●●●
●●
● ●
●●
●●
●●●
●●
●● ● ●●
●●
●●●

●●
●●●●
●●● ●● ●●
●● ●● ● ●● ● ●
● ● ● ●● ●
● ●●● ●●
●●
●●
●●●
●●
●●●●●●●
●●

●●
●●
● ●●●
●●●●●● ●●

●●
●●
●●

● ●● ●●●● ● ●●
●●●●
●●
●●●●●●●●●●
● ●●
● ● ●●● ●● ●
rm ●
●●
●●●●

●●





●●


●●
● ●
●●










●●









●●
●●
































●●●●
●● ● ●
● ●




●●




●●
●●
●●





●●



●●





































●●





●●













●●●●●


● ●
● ●
●●●● ●● ●●


●●
●●
● ●
●●
●● ●●
●●
●●

●●
●●

●●
●●






●●

●●●

●●
●●●●●


●●

●●



●●●●


●●●●
●●















●●
●●

●●




























6
● ●
● ●●●
●● ●
● ●
●●
●●

●●●●
●●
●●
●● ●
● ● ●●
● ●



●●●●
●●
●●
●●
●●

●●●

●●●●
● ● ●●●● ● ● ●
●● ●

●● ●●● ● ●
●●●●● ●

●●● ●●
●● ●●●

● ●●●
●●
●●
●●
●●●
●●● ● ●●●●●●●
●●
●●● ● ●
●● ●

●●
●●●
● ●● ●● ●
● ●●●●●● ● ●●●●●●
● ● ●●●●
●●
●●
●●


● ●●●●
●● ●
●●


● ●
●●


● ●
● ●● ● ●●
●●●


●●●

●●●

●●

● ●●●●●●●●
●●●

●●● ●● ●● ●
●●●●
● ●●
●● ●
●●


● ●


●●●
● ●● ●●●
●● ●●● ●●● ●●●● ●● ●
● ●
● ● ● ● ●●●●

●●
●●



● ●● ● ● ●● ● ● ● ●●●●● ● ●●
●●● ●
●●

5
●●● ● ● ● ● ● ●● ● ● ● ●●
●●● ● ●

●●
● ●

●● ● ● ●

4
● ● ●
● ● ●
10 20 30 40 50

● ● ● ● ● ●● ●
●●●●● ●●
●●●●●●● ● ●● ● ● ●●● ●
●●●●
●●
● ●● ● ● ●
●●● ●
●● ● ● ● ●
● ● ● ● ●●
●● ● ● ● ● ●
● ●● ● ●
●●● ● ●● ●
● ●
● ●
● ●●●
● ● ●●
● ●● ● ● ●● ● ● ● ●●● ● ●
●●
● ●

●●● ●● ●

●●
●●●●
● ● ●● ●● ● ●
●●●
●●●
●●
●● ●
●●●

●●● ●●
●● ●●● ●● ●●●●● ● ● ●●● ●
●●● ●●
●●
●●
●●●
● ● ●●
●●
● ●●●● ●●● ●●

●● ●● ●● ●
● ●
● ●● ● ●

● ● ●●

● ●
●●●
















●●







































●●












●●
●●

●●●






medv ● ●


●●







●●










































● ●● ●

●●●







●●●


●●●









●●



●●




●●●


●● ● ●

● ●●●
●● ●
●●●
●●●
●● ●

●●●
●●




●●
●●● ●●

● ● ● ●●
● ●●●●●●
●●●

●●

●●



●●


●●

●●●
● ●



●●●

●●●
●●●


●●




● ●●●●
●● ●
●●●

●●
●●●
●●●●

●●

●●








●●
●●
●●●
●●●


● ●
●●
●●


●●









●●





●●
●●●
● ●
●●●


●●






●●







●●


●●


●●
●●
●●


●●


●●● ●●● ●●


●●●●● ●



●● ●●●●●
●●●●

●●●●●●

●●●

●●


●●



●●
●●
● ●● ●
●●
●●●●
●●●

●●● ● ●●
● ●●●

●●●
●●●
●●
●●
●●●
●●
● ● ●●●●● ● ●● ●
● ● ●
● ●● ●●●
●●● ●●●
●●


● ●
● ●●
●●





●●●
●●●


●●
● ● ●● ●
●●

●●

●●

●●



●●
●●●●●●● ● ●● ●
● ● ● ●● ● ● ●●●●
● ●
●●●

●●
●●








●●


● ●● ●●●●
●●
●●

●●
● ●

●●
● ●
●●●
●● ● ● ●
●●

●●
●●


●●●●

●●● ● ●
●● ● ● ● ●●
●● ●
●●


●●






●●

● ●● ●●
● ●
●●
●●
●●●●●

●●

● ● ● ●●
●●●●
●●●● ●
●●



●●
●● ●
●● ●●● ● ● ●
● ●●
●●


●●
●●
●●
● ●● ●●● ●● ● ● ●●
●●
● ●
● ●●●●●●
● ●●●
● ●● ● ●● ●●●●●●●●●
●● ● ● ● ●● ●
●● ●●
●● ● ● ● ● ● ● ● ●

●● ● ● ●

●●● ● ● ● ●● ● ●
● ● ● ●

30
● ●●●●●●● ●●●●
●● ● ● ●● ●

●●● ● ● ● ●● ●●● ● ● ●
●●●

●● ●●● ●● ●● ●●● ●●
●●●●●
●●●● ● ●● ● ●● ●●●●

●● ●●●● ●● ●● ●● ●●
●●
● ● ●
● ●
●● ●
●●
● ●●●● ●

●●●
● ● ● ●●
●●●




●●
●● ●
● ● ●● ●●● ● ● ●●● ●●
lstat ●● ● ● ●

20

●● ● ●● ●● ● ●● ●●●●
●● ● ●●
●●


●●● ● ●● ●
● ●●●● ● ● ● ●●● ●●

●●
●●●
●●


●●
●●●● ●
●●●●●● ● ●
●●●●●

●●

●●●
● ●
●●

●●●●●
●● ● ●
●● ●● ●●
● ●●●



●●
● ●


●●
●●●●
●●












●●●
●●


● ● ●●●







●● ●
●●




●●

●●●
●● ● ● ●● ●●● ●●●●● ●●

●●●●















● ● ●●●
●●
●●




●●●


●●








●●●
●● ●● ● ●


●●●






●●





●●


●●
● ●● ●● ●●● ●●● ● ●●●●
●● ●●●● ●●
● ●




●●



●●

●●●





● ●● ●●●

●●
●●


●●
●●

●● ●


● ● ●

●●

● ●●



●●









●●
● ●●● ●●● ●● ●●
●●
● ●
●●
●●●●●
●●●●●●●
●●●●




● ● ●

10
●●● ●●●

●●
●●
● ●● ●● ●

● ●
●●
●●●

● ● ● ●● ●●● ●● ●
●●
●●● ●●●●
●●●●●
●●●


●●

●●●

●●●●
●●
●●
●●●●●● ●●
●●●





●●

● ●
●● ●

●●● ●● ●
● ●●●
● ●●●●●●
● ●●

●●
●●

●●● ● ●●●
●● ●●
●●●●●● ●
●●
●●
●●
●● ●●
● ●● ●●●●●● ● ● ●● ●●
●●
●●

●●

●●

●●● ●●●●●
● ● ● ●

●●●
●●● ●● ●●●● ●●●●
●● ●●●●●●● ●●● ●
● ●●
●●













●●










●●
●●


●●●



●● ●● ●●●








●●

●●
●●
●●
●●


●●


●●● ●● ● ● ●●
●●
● ●

● ●

●●
● ●
●●

●● ●
●●
●● ●●

●●●

●●●
● ●


●●●
●● ● ●●●

●●● ● ●

●● ● ● ● ●
● ● ●●
●● ●●●● ● ●●● ●● ●● ● ●● ●●●

●● ●
●●●

●●




●●

●●
●●

●●
●●
● ●
●●●●●● ●
●●
●●●
●● ●●●




●●
●●●

●●
● ●
●● ●●
●●●●●●

● ●●

●●●
●●●

●●●●


●●
●●
● ● ●●●●
● ●● ● ●
●●●
●● ●
● ●
●●

● ●● ●
● ●● ● ● ●

● ●
● ● ●● ●●● ● ● ●● ● ●
100

●● ●●●

●●
●●●

●●
●●

●●
●●
●●●
●●●●
●●

●●●

●●
●●●
●●● ●●● ●● ●
●●
●● ●
●●●

●●

●●●
●●

●●
●●

● ●

●●
●●●●
●●●● ●● ●●● ● ● ● ●●●●● ●●
●● ●●●●
●●

●●●
●●
●●
●●
●●
●●
●●


●●●
●●
●● ●
●●
●●●●●

●● ●
● ●●
●● ●
●●●
●● ●

●●●


●●

●●
●●●
●●
● ●●●● ●●●
●●●

●●


●●
● ●
●●
●●●

● ●●●●● ●● ● ●● ● ●● ●
●●●
●●

●●
●●●
● ●●

●●
● ●●●
● ●
● ● ●● ●●




●●●


●●
●●●

● ●●


● ●●●●● ●● ●
●●●
● ●

●●
●●
●●● ●


●●●●●● ● ● ●● ● ●● ● ●●● ●
●●●●●
● ●●●

●●
●● ●


●●
●●
●●
●●●
●●●●


●●●● ●● ●
● ●
●●●●●
●●
● ●
●●●
●●●●
●●●●●
● ● ● ● ●
● ● ●●
● ●●●● ●
●● ●
●●● ●● ●●●●● ● ●●●
●●

● ●
●● ● ●
● ●●
●●


●●●●●● ●● ●● ●
● ●
●●
●●● ●
●●
●●●●●● ● ● ● ●●
●●●●●● ●
● ●
●●
●●
●●



●●
●●

●●


●●
● ● ●
● ●
●● ●●● ● ●

● ●

●● ●

● ● ●●● ● ● ● ●●●● ●
●●●
●●
● ●

●●

●● ●●● ●
● ●
●●●●● ●

●●●

●● ●
● ● ●● ● ●
●●●●● ●● ●
● ●● ●● ●
●●● ●●
●●●


●● ●●●●

● ● ●
●●● ● ● ● ● ● ●● ●● ●●

●●●● ●
●● ●
●● ● ● ●● ●
●●

● ● ●
● ● ●● ● ● ●● ●● ●●●
●●●●●●●
●●
● ●●●●● ● ●● ●●●● ● ● ● ●●●●
● ●●

●●
●●●
● ●
● ●●● ● ●● ● ●
●● ● ●●● ● ●●● ●●● ●●
60


● ● ● ●●● ●
● ●●●● ● ●●●●●●





●●




●●

●●


●●

●●●




●●●






●●
● ●●
●●● ●
●● ● ● ●
●●●
●●●●●
●● ●●
●●
●●

●●



●●●









●●
●●

●●● ● ●

● ● ● ●●
●●


● ● ●


● ●
●● ● ●
●●

●●
●● ●





●●


●●





●●
●●


●●



●●●


● ●


●●




●●●




●●

age
● ●●●● ●●●
●●
● ●● ●●
●● ●●●● ● ●● ● ●●●

●● ●

●●●●●●● ● ● ● ●●●


●●● ●


●●
●● ●
●●
●●●●
●●●●
● ●
●● ●● ●● ●
●●

●●●●●● ●●● ● ● ●● ●
●●●
●●
●● ●
●●●
●●
●●●
●● ●● ●

●●●● ●●● ●●
● ●●
●● ●● ●● ●●● ●● ●●● ●

●●
● ●
● ●● ● ●
● ● ● ●●●● ● ●● ● ● ● ● ●●
20

●● ● ●●●● ●●

●●
●●●●
● ●●●●


●● ● ● ●● ●●
●●●●
●● ● ●
● ● ●●●
●●


●●●
●●


●●
●●●
●● ●● ● ●●
●●
●● ●
●●●
● ●●●
●● ●●
● ● ●●●

●●● ●
● ● ●●
● ●
●●
●●
●● ●
● ●
0

4 5 6 7 8 10 20 30

o diagrama de dispersão multivariado pode ser realçado com o ajuste de relações lineares
e não-lineares entre as variáveis.

> pairs(d[,c("rm","medv","lstat","age")],
+ panel=function(x,y){abline(lsfit(x,y)$coef)
+ lines(lowess(x,y))
+ points(x,y) } )

6
10 20 30 40 50 0 20 60 100

● ● ●
●● ●●
●●● ●●●
● ●●
●●●● ● ●●●● ●●
●● ● ●● ● ●● ● ● ●

8
●●●●●
● ●●●●● ●● ●
●● ● ● ● ● ●
● ●● ● ● ● ●
● ●
●● ●●●● ●●
●● ● ●
●●
● ● ●● ●
●● ●●● ●
●● ●
● ●●

● ●● ●
● ●● ●● ●●● ●
●● ●●●● ●●● ●●
●●●
●●●●●
●● ●●●●●
●●
●● ●●● ● ●●
●● ● ● ●●● ● ● ●●
●●● ● ●●● ● ● ●●●●
●● ●●● ●●●● ●●●

7
● ● ●●● ●●
● ●
●●●●●●● ● ●

● ●
●●●● ●
● ● ● ●●● ● ●●●●●● ●●● ●
●● ● ●●
● ●● ●●●
●●
● ●
●●
●●
●●●
●●
●● ● ●●
●●
●●●

●●
●●●●
●●● ●● ●●
●● ●● ● ●● ● ●
● ● ● ●● ●
● ●●● ●●
●●
●●
●●●
●●
●●●●●●●
●●

●●
●●
● ●●●
●●●●●● ●●

●●
●●
●●

● ●● ●●●● ● ●●
●●●●
●●
●●●●●●●●●●
● ●●
● ● ●●● ●● ●
rm ●
●●
●●●●

●●





●●


●●
● ●
●●










●●









●●
●●
































●●●●
●● ● ●
● ●




●●




●●
●●
●●





●●



●●





































●●





●●













●●●●●


● ●
● ●
●●●● ●● ●●


●●
●●
● ●
●●
●● ●●
●●
●●

●●
●●

●●
●●






●●

●●●

●●
●●●●●


●●

●●



●●●●


●●●●
●●















●●
●●

●●




























6
● ●
● ●●●
●● ●
● ●
●●
●●

●●●●
●●
●●
●● ●
● ● ●●
● ●



●●●●
●●
●●
●●
●●

●●●

●●●●
● ● ●●●● ● ● ●
●● ●

●● ●●● ● ●
●●●●● ●

●●● ●●
●● ●●●

● ●●●
●●
●●
●●
●●●
●●● ● ●●●●●●●
●●
●●● ● ●
●● ●

●●
●●●
● ●● ●● ●
● ●●●●●● ● ●●●●●●
● ● ●●●●
●●
●●
●●


● ●●●●
●● ●
●●


● ●
●●


● ●
● ●● ● ●●
●●●


●●●

●●●

●●

● ●●●●●●●●
●●●

●●● ●● ●● ●
●●●●
● ●●
●● ●
●●


● ●


●●●
● ●● ●●●
●● ●●● ●●● ●●●● ●● ●
● ●
● ● ● ● ●●●●

●●
●●



● ●● ● ● ●● ● ● ● ●●●●● ● ●●
●●● ●
●●

5
●●● ● ● ● ● ● ●● ● ● ● ●●
●●● ● ●

●●
● ●

●● ● ● ●

4
● ● ●
● ● ●
10 20 30 40 50

● ● ● ● ● ●● ●
●●●●● ●●
●●●●●●● ● ●● ● ● ●●● ●
●●●●
●●
● ●● ● ● ●
●●● ●
●● ● ● ● ●
● ● ● ● ●●
●● ● ● ● ● ●
● ●● ● ●
●●● ● ●● ●
● ●
● ●
● ●●●
● ● ●●
● ●● ● ● ●● ● ● ● ●●● ● ●
●●
● ●

●●● ●● ●

●●
●●●●
● ● ●● ●● ● ●
●●●
●●●
●●
●● ●
●●●

●●● ●●
●● ●●● ●● ●●●●● ● ● ●●● ●
●●● ●●
●●
●●
●●●
● ● ●●
●●
● ●●●● ●●● ●●

●● ●● ●● ●
● ●
● ●● ● ●

● ● ●●

● ●
●●●
















●●







































●●












●●
●●

●●●






medv ● ●


●●







●●










































● ●● ●

●●●







●●●


●●●









●●



●●




●●●


●● ● ●

● ●●●
●● ●
●●●
●●●
●● ●

●●●
●●




●●
●●● ●●

● ● ● ●●
● ●●●●●●
●●●

●●

●●



●●


●●

●●●
● ●



●●●

●●●
●●●


●●




● ●●●●
●● ●
●●●

●●
●●●
●●●●

●●

●●








●●
●●
●●●
●●●


● ●
●●
●●


●●









●●





●●
●●●
● ●
●●●


●●






●●







●●


●●


●●
●●
●●


●●


●●● ●●● ●●


●●●●● ●



●● ●●●●●
●●●●

●●●●●●

●●●

●●


●●



●●
●●
● ●● ●
●●
●●●●
●●●

●●● ● ●●
● ●●●

●●●
●●●
●●
●●
●●●
●●
● ● ●●●●● ● ●● ●
● ● ●
● ●● ●●●
●●● ●●●
●●


● ●
● ●●
●●





●●●
●●●


●●
● ● ●● ●
●●

●●

●●

●●



●●
●●●●●●● ● ●● ●
● ● ● ●● ● ● ●●●●
● ●
●●●

●●
●●








●●


● ●● ●●●●
●●
●●

●●
● ●

●●
● ●
●●●
●● ● ● ●
●●

●●
●●


●●●●

●●● ● ●
●● ● ● ● ●●
●● ●
●●


●●






●●

● ●● ●●
● ●
●●
●●
●●●●●

●●

● ● ● ●●
●●●●
●●●● ●
●●



●●
●● ●
●● ●●● ● ● ●
● ●●
●●


●●
●●
●●
● ●● ●●● ●● ● ● ●●
●●
● ●
● ●●●●●●
● ●●●
● ●● ● ●● ●●●●●●●●●
●● ● ● ● ●● ●
●● ●●
●● ● ● ● ● ● ● ● ●

●● ● ● ●

●●● ● ● ● ●● ● ●
● ● ● ●

30
● ●●●●●●● ●●●●
●● ● ● ●● ●

●●● ● ● ● ●● ●●● ● ● ●
●●●

●● ●●● ●● ●● ●●● ●●
●●●●●
●●●● ● ●● ● ●● ●●●●

●● ●●●● ●● ●● ●● ●●
●●
● ● ●
● ●
●● ●
●●
● ●●●● ●

●●●
● ● ● ●●
●●●




●●
●● ●
● ● ●● ●●● ● ● ●●● ●●
lstat ●● ● ● ●

20

●● ● ●● ●● ● ●● ●●●●
●● ● ●●
●●


●●● ● ●● ●
● ●●●● ● ● ● ●●● ●●

●●
●●●
●●


●●
●●●● ●
●●●●●● ● ●
●●●●●

●●

●●●
● ●
●●

●●●●●
●● ● ●
●● ●● ●●
● ●●●



●●
● ●


●●
●●●●
●●












●●●
●●


● ● ●●●







●● ●
●●




●●

●●●
●● ● ● ●● ●●● ●●●●● ●●

●●●●















● ● ●●●
●●
●●




●●●


●●








●●●
●● ●● ● ●


●●●






●●





●●


●●
● ●● ●● ●●● ●●● ● ●●●●
●● ●●●● ●●
● ●




●●



●●

●●●





● ●● ●●●

●●
●●


●●
●●

●● ●


● ● ●

●●

● ●●



●●









●●
● ●●● ●●● ●● ●●
●●
● ●
●●
●●●●●
●●●●●●●
●●●●




● ● ●

10
●●● ●●●

●●
●●
● ●● ●● ●

● ●
●●
●●●

● ● ● ●● ●●● ●● ●
●●
●●● ●●●●
●●●●●
●●●


●●

●●●

●●●●
●●
●●
●●●●●● ●●
●●●





●●

● ●
●● ●

●●● ●● ●
● ●●●
● ●●●●●●
● ●●

●●
●●

●●● ● ●●●
●● ●●
●●●●●● ●
●●
●●
●●
●● ●●
● ●● ●●●●●● ● ● ●● ●●
●●
●●

●●

●●

●●● ●●●●●
● ● ● ●

●●●
●●● ●● ●●●● ●●●●
●● ●●●●●●● ●●● ●
● ●●
●●













●●










●●
●●


●●●



●● ●● ●●●








●●

●●
●●
●●
●●


●●


●●● ●● ● ● ●●
●●
● ●

● ●

●●
● ●
●●

●● ●
●●
●● ●●

●●●

●●●
● ●


●●●
●● ● ●●●

●●● ● ●

●● ● ● ● ●
● ● ●●
●● ●●●● ● ●●● ●● ●● ● ●● ●●●

●● ●
●●●

●●




●●

●●
●●

●●
●●
● ●
●●●●●● ●
●●
●●●
●● ●●●




●●
●●●

●●
● ●
●● ●●
●●●●●●

● ●●

●●●
●●●

●●●●


●●
●●
● ● ●●●●
● ●● ● ●
●●●
●● ●
● ●
●●

● ●● ●
● ●● ● ● ●

● ●
● ● ●● ●●● ● ● ●● ● ●
100

●● ●●●

●●
●●●

●●
●●

●●
●●
●●●
●●●●
●●

●●●

●●
●●●
●●● ●●● ●● ●
●●
●● ●
●●●

●●

●●●
●●

●●
●●

● ●

●●
●●●●
●●●● ●● ●●● ● ● ● ●●●●● ●●
●● ●●●●
●●

●●●
●●
●●
●●
●●
●●
●●


●●●
●●
●● ●
●●
●●●●●

●● ●
● ●●
●● ●
●●●
●● ●

●●●


●●

●●
●●●
●●
● ●●●● ●●●
●●●

●●


●●
● ●
●●
●●●

● ●●●●● ●● ● ●● ● ●● ●
●●●
●●

●●
●●●
● ●●

●●
● ●●●
● ●
● ● ●● ●●




●●●


●●
●●●

● ●●


● ●●●●● ●● ●
●●●
● ●

●●
●●
●●● ●


●●●●●● ● ● ●● ● ●● ● ●●● ●
●●●●●
● ●●●

●●
●● ●


●●
●●
●●
●●●
●●●●


●●●● ●● ●
● ●
●●●●●
●●
● ●
●●●
●●●●
●●●●●
● ● ● ● ●
● ● ●●
● ●●●● ●
●● ●
●●● ●● ●●●●● ● ●●●
●●

● ●
●● ● ●
● ●●
●●


●●●●●● ●● ●● ●
● ●
●●
●●● ●
●●
●●●●●● ● ● ● ●●
●●●●●● ●
● ●
●●
●●
●●



●●
●●

●●


●●
● ● ●
● ●
●● ●●● ● ●

● ●

●● ●

● ● ●●● ● ● ● ●●●● ●
●●●
●●
● ●

●●

●● ●●● ●
● ●
●●●●● ●

●●●

●● ●
● ● ●● ● ●
●●●●● ●● ●
● ●● ●● ●
●●● ●●
●●●


●● ●●●●

● ● ●
●●● ● ● ● ● ● ●● ●● ●●

●●●● ●
●● ●
●● ● ● ●● ●
●●

● ● ●
● ● ●● ● ● ●● ●● ●●●
●●●●●●●
●●
● ●●●●● ● ●● ●●●● ● ● ● ●●●●
● ●●

●●
●●●
● ●
● ●●● ● ●● ● ●
●● ● ●●● ● ●●● ●●● ●●
60


● ● ● ●●● ●
● ●●●● ● ●●●●●●





●●




●●

●●


●●

●●●




●●●






●●
● ●●
●●● ●
●● ● ● ●
●●●
●●●●●
●● ●●
●●
●●

●●



●●●









●●
●●

●●● ● ●

● ● ● ●●
●●


● ● ●


● ●
●● ● ●
●●

●●
●● ●





●●


●●





●●
●●


●●



●●●


● ●


●●




●●●




●●

age
● ●●●● ●●●
●●
● ●● ●●
●● ●●●● ● ●● ● ●●●

●● ●

●●●●●●● ● ● ● ●●●


●●● ●


●●
●● ●
●●
●●●●
●●●●
● ●
●● ●● ●● ●
●●

●●●●●● ●●● ● ● ●● ●
●●●
●●
●● ●
●●●
●●
●●●
●● ●● ●

●●●● ●●● ●●
● ●●
●● ●● ●● ●●● ●● ●●● ●

●●
● ●
● ●● ● ●
● ● ● ●●●● ● ●● ● ● ● ● ●●
20

●● ● ●●●● ●●

●●
●●●●
● ●●●●


●● ● ● ●● ●●
●●●●
●● ● ●
● ● ●●●
●●


●●●
●●


●●
●●●
●● ●● ● ●●
●●
●● ●
●●●
● ●●●
●● ●●
● ● ●●●

●●● ●
● ● ●●
● ●
●●
●●
●● ●
● ●
0

4 5 6 7 8 10 20 30

Vamos construir um diagrama de dispersão 3d a partir da biblioteca scatterplot3d para


as variáveis : rm, lstat e medv.

Associado a estes diagramas de dispersão vamos obter a matriz de correlação estimada.

> cor(d[,c("rm","medv","lstat","age")])

rm medv lstat age


rm 1.0000000 0.6953599 -0.6138083 -0.2402649
medv 0.6953599 1.0000000 -0.7376627 -0.3769546
lstat -0.6138083 -0.7376627 1.0000000 0.6023385
age -0.2402649 -0.3769546 0.6023385 1.0000000

O comando abaixo ilustra o scatterplot em 3 dimensões, com isto podemos analisar con-
juntamente 3 variáveis aleatórias.

> library(scatterplot3d)
> scatterplot3d(d$rm,d$lstat,d$medv)

7
● ●

● ● ● ● ●●
●●●
● ●● ●
50

● ●

●● ●

● ●


● ● ● ●

40

● ●●
●●●
● ● ●● ●
●●
● ●● ● ●
●●●●●● ●●
● ●●
● ●●●● ●
●●
● ●
●●● ●●●



●●
●●

●● ●●

● ●
●●●●
● ●●
●●
● ● ● ●

●●●
●● ●
30

●● ●●
● ●●
●● ●
●●
●●● ●

d$medv

● ●●●●
●●●●
●●
●●
● ● ● ●●
●●●
●●





●●

●●


●●●
●●●● ●
●●


●●●●
●●
●●

●●

●●


●●
●●

●●●

●●
● ●
●● ●●●
●●
●● ●
● ●

● ●●

●●

●●

●●

●●●
●●

●●●



●●●


●●●●

●●
●●
● ●●●
● ● ● ● ●
● ●●

● ● ●
● ● ● ●● ●●●● ●● ●
● ● ● ●●

●●
●●●●●
●●●
●●
● ●●

●● ●●
●●

●●● ●●
●●
●●
●●●
●● ●●●●● ●●●
● ● ●
●● ●
●●●

d$lstat
● ●●●● ●●● ●● ● ● ●
●●●
20

● ● ●● ●
● ●
●●
●●●● ● ●●● 40
● ● ●
● ●
30
10

20
10
0
0

3 4 5 6 7 8 9

d$rm

Para o conjunto de dados Boston Housing vamos trabalhar com o vetor de médias e a
matriz de covariâncias do vetor das variáveis rm. lstat e age.

> # Calculando o vetor de médias


> X<-d[,c("rm","medv","lstat")]
> Xb<-apply(X,2,mean)
> Xb<-matrix(Xb)
> Xb

[,1]
[1,] 6.284634
[2,] 22.532806
[3,] 12.653063

8
> S<-cov(X)
> S

rm medv lstat
rm 0.4936709 4.493446 -3.079741
medv 4.4934459 84.586724 -48.447538
lstat -3.0797414 -48.447538 50.994760

3.1 O Boxplot Bivariado

Os comandos abaixo produzem o Boxplot Bivariado. Esta é uma versão similar ao boxplot
univariado mas que utiliza uma elipse para determinar os pontos que estão mais próximos
da centróide dos dados.

> bivbox<-function(a, d = 7, mtitle = "Bivariate Boxplot",


+ method = "robust",xlab="X",ylab="Y")
+ {
+ #a is data matrix
+ #d is constant(usually 7)
+ p <- length(a[1, ])
+ if(method == "robust") {
+ param <- biweight(a[, 1:2]); m1 <- param[1]; m2 <- param[2]
+ s1 <- param[3]; s2 <- param[4]; r <- param[5]
+ }
+ else {
+ m1 <- mean(a[, 1]); m2 <- mean(a[, 2]);
+ s1 <- sqrt(var(a[, 1])); s2 <- sqrt(var(a[, 2])); r <- cor(a[, 1:2])[1, 2]
+ }
+ x <- (a[, 1] - m1)/s1; y <- (a[, 2] - m2)/s2
+ e <- sqrt((x * x + y * y - 2 * r * x * y)/(1 - r * r))
+ e2 <- e * e; em <- median(e); emax <- max(e[e2 < d * em * em])
+ r1 <- em * sqrt((1 + r)/2); r2 <- em * sqrt((1 - r)/2); theta <- ((2 * pi)/360) * seq(0, 360, 3)
+ xp <- m1 + (r1 * cos(theta) + r2 * sin(theta)) * s1; yp <- m2 + (r1 * cos(theta) - r2 * sin(theta)) * s2
+ r1 <- emax * sqrt((1 + r)/2); r2 <- emax * sqrt((1 - r)/2); theta <- ((2 * pi)/360) * seq(0, 360, 3)
+ xpp <- m1 + (r1 * cos(theta) + r2 * sin(theta)) * s1; ypp <- m2 + (r1 * cos(theta) - r2 * sin(theta)) * s2
+ maxxl <- max(xpp); minxl <- min(xpp); maxyl <- max(ypp); minyl <- min(ypp)
+ b1 <- (r * s2)/s1; a1 <- m2 - b1 * m1; y1 <- a1 + b1 * minxl; y2 <- a1 + b1 * maxxl
+ b2 <- (r * s1)/s2; a2 <- m1 - b2 * m2; x1 <- a2 + b2 * minyl; x2 <- a2 + b2 * maxyl
+ maxx <- max(c(a[, 1], xp, xpp, x1, x2)); minx <- min(c(a[, 1], xp, xpp, x1, x2))
+ maxy <- max(c(a[, 2], yp, ypp, y1, y2)); miny <- min(c(a[, 2], yp, ypp, y1, y2))
+ plot(a[, 1], a[, 2], xlim = c(minx, maxx), ylim = c(miny, maxy), xlab =xlab, ylab =ylab,
+ lwd = 2, pch = 1)
+ lines(xp, yp, lwd = 2); lines(xpp, ypp, lty = 2, lwd = 2)
+ segments(minxl, y1, maxxl, y2, lty = 3, lwd = 2); segments(x1, minyl, x2, maxyl, lty = 4, lwd = 2)
+ }

Construindo o boxplot bivariado para as variáveis

> bivbox(cbind(Boston$rm , Boston$medv), xlab = "rm",


+ ylab = "medv", method ="O")

9
50

● ● ● ● ● ● ●
●●● ● ●● ●

● ● ●

● ●


●● ●
● ●
● ●
40



● ●
●● ●
● ●●
●●●
● ●
●● ●● ● ●
● ●●
● ●● ●●● ●● ●
● ● ●● ●● ●●
● ●●● ●● ●
30

● ●● ● ●●●
●●●●●● ●●●●
● ●● ● ●● ●
medv

● ●● ●●●●● ●
● ● ● ●
●● ●●●●●●

● ● ●

●●●
●●


● ●● ●
● ●● ● ● ●
●●●● ●●●●● ●●●● ●
● ● ● ●●●
●●●●●●
●● ●●
●●●●
● ●
●●●
●●●●
●● ●●●● ●

● ●●●● ●●●●
●●
●●
●●
●●
●●
●●
● ●



●●

●●● ●
●● ● ●● ●
●●

● ●
● ●
● ● ● ●
20

●● ●●● ● ●
●●●●
●●●●
● ●● ●●
● ●●
● ●● ●●
●●●
●●
●●

●●●
● ●●●●

● ●
●●●●●●●●●● ●

● ●●●●●●● ●● ●

●●●●● ●●●
● ●● ●
● ● ● ●
●●●● ●●

● ●●
● ●●
● ●●
● ●● ● ● ●●●● ● ●
●● ● ● ● ●

● ●● ● ●●● ● ● ●
● ● ● ●● ●● ●●
● ● ●●● ● ●●
●●
● ●● ● ●● ● ●●

● ● ●● ●● ● ● ● ●
● ● ● ●
10

● ● ● ● ●
● ● ● ●

● ● ● ● ●
●● ● ●
● ●
● ● ●● ●●

● ● ●
0

4 5 6 7 8

rm

4 Exercı́cios

Para o vetor com as variáveis medv,rm,lstat e tax escreva os comandos que solucione os
problemas abaixo.

1. Realize a decomposição espectral da matriz de covariância S

2. Encontre o traço desta matriz e o seu determinante.

3. Calcule os quantis teóricos e os quantis empı́ricos(d2j = (xj − x̄)T S −1 (xj − x̄)) da


distribuição qui-quadrado seguindo os passos enumerados em sala de aula e construa
o Q-Q plot.

4. Encontre o vetor de médias e a matriz de covariâncias da distribuição normal mul-


tivariada condicional [Y|Z = z] em que Y =[medv tax] e Z=[lstat rm].

10

Você também pode gostar