Essa é uma revisão anterior do documento!
Tabela de conteúdos
Participantes
- Flaviane Peccin, Graduanda (UFPR)
- Christine Cardozo de Araujo, Graduanda (UFPR)
- Joel Maurício Corrêa da Rosa , Prof. Dr. (UFPR)
Objetivos
Geral : Aplicar técnicas multivariadas para encontrar possíveis fatores de risco para idosas hipertensas.
Específicos
- Aplicar métodos de clusterização
- Aplicar métodos de classificação
- Comparar os métodos de classificação
- Avaliar a importância das variáveis explicativas
Metodologia
Métodos Multivariados.
- Regressão Logística
- Clusterização
- Análise Linear Discriminante
- Árvores de Decisão
- Redes Neurais Artificiais
Árvores de Decisão
Árvores de Decisão são extremamente úteis para revelar de forma simples, estruturas que são extremamente complexas. O pacote R dispõe de duas funções para o ajuste de árvores de decisão: tree e rpart.
Pela função rpart é possível construir árvores de decisão no mesmo espírito descrito em Breiman et al. (1984) na monografia CART (Classification and Regression Trees).
Regressão Logística
Este problema envolve um grande número de covariáveis e, portanto, uma das maiores dificuldades está na seleção do conjunto de preditoras. Métodos do tipo stepwise, embora sejam atraentes na prática podem conduzir à modelos enganosos.
A tarefa aqui, é integrar à construção do modelo a intervenção dos especialistas na área. Então um passo no processo iterativo de seleção de variáveis é retirar preditoras selecionadas automaticamente que não tenham sentido, de acordo com opinião especializada.
Análise Linear Discriminante
A função lda() presente no pacote MASS do R realiza análise linear discriminante. É importante notar que para a construção da função linear discriminante os preditores devem ser quantitativos e assume-se matrizes de covariância iguais nos grupos.
Redes Neurais Artificiais
Redes Neurais Artificiais para classificação estão implementadas no pacote nnet() presente na biblioteca MASS do R.
Avaliação de Capacidade Preditiva
Os desempenhos de diferentes métodos para a classificação são usualmente comparados por intermédio de experimentos de validação cruzada com 10-dobras. Estes consistem em utilizar 90% dos dados para treinamento e 10% para teste. Os métodos passam por aprendizado supervisionado utilizando a chamada amostra de treinamento composta pelos dados selecionados com esta finalidade e o ajuste final é testado na amostra de teste.
Resultados e Discussão
Banco de Dados e Scripts do R
Links de Interesse
Outros Materiais
Funções do R
Scripts do R
# pacotes necessarios
require(MASS)
require(tree)# arvores de decisao
require(rpart)# arvores de decisao
# Leitura do conjunto de dados
dados<-read.csv2('http://www.leg.ufpr.br/~joel/dados/hiipertensao.csv',na.strings="")
# Re-expressão das variáveis
dados<-transform(dados,sexo=factor(sexo,labels=c('feminino','masculino')))
Estudo - Regressão Logística
#Descritivo dos dados originais summary(dados) sapply(dados,class) names(dados) #separação por sexo dad <- split(dados , dados$sexo) dadfem <- dad[["feminino"]] dadf <- na.omit(dadfem) #verificação summary (dados$sexo) summary (dadfem$sexo) summary (dadf$sexo) #Verificar os nomes das variáveis names(dadf)
# Criacao de vetor de indices
> ind<-1:150
# 90% dos dados
> 0.9*150
[1] 135
# Indices para treinamento
> ind.train<-sample(ind,135)
> ind.train
[1] 77 103 89 57 122 75 41 81 147 94 144 117 128 6 55 7 52 5
[19] 118 96 98 125 104 115 30 80 35 17 20 95 50 27 56 40 9 109
[37] 87 82 100 39 135 142 48 78 63 16 73 120 18 71 137 150 138 85
[55] 13 23 136 12 8 72 61 68 112 93 83 76 140 146 26 43 62 134
[73] 53 65 11 102 79 121 49 141 45 54 47 149 131 99 21 15 110 124
[91] 22 113 74 88 129 42 1 51 10 145 3 86 28 25 29 114 33 37
[109] 58 126 97 46 116 64 111 108 66 34 105 14 60 59 101 92 107 4
[127] 130 119 127 132 91 90 84 133 24
# Selecao do conjunto de treinamento
> iris.train<-iris[ind.train,]
# Selecao do conjunto de teste
> iris.test<-iris[-ind.train,]
# Ajuste da arvore de classificacao
> tr.rp<-rpart(Species~.,data=iris.train)
# Grafico da arvore
> plot(tr.rp);text(tr.rp)
# Armazenando os valores preditos
> preditos<-predict(tr.rp,newdata=iris.test)
> preditos
setosa versicolor virginica
2 1 0.00000000 0.00000000
19 1 0.00000000 0.00000000
31 1 0.00000000 0.00000000
32 1 0.00000000 0.00000000
36 1 0.00000000 0.00000000
38 1 0.00000000 0.00000000
44 1 0.00000000 0.00000000
67 0 0.90196078 0.09803922
69 0 0.90196078 0.09803922
70 0 0.90196078 0.09803922
106 0 0.02439024 0.97560976
123 0 0.02439024 0.97560976
139 0 0.02439024 0.97560976
143 0 0.02439024 0.97560976
148 0 0.02439024 0.97560976
# Conjunto de teste
> iris.test
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
2 4.9 3.0 1.4 0.2 setosa
19 5.7 3.8 1.7 0.3 setosa
31 4.8 3.1 1.6 0.2 setosa
32 5.4 3.4 1.5 0.4 setosa
36 5.0 3.2 1.2 0.2 setosa
38 4.9 3.6 1.4 0.1 setosa
44 5.0 3.5 1.6 0.6 setosa
67 5.6 3.0 4.5 1.5 versicolor
69 6.2 2.2 4.5 1.5 versicolor
70 5.6 2.5 3.9 1.1 versicolor
106 7.6 3.0 6.6 2.1 virginica
123 7.7 2.8 6.7 2.0 virginica
139 6.0 3.0 4.8 1.8 virginica
143 5.8 2.7 5.1 1.9 virginica
148 6.5 3.0 5.2 2.0 virginica
> help(predict)
> help(predict.rpart)
# Classes preditas (type ="class")
> preditos<-predict(tr.rp,newdata=iris.test,type="class")
> preditos
2 19 31 32 36 38 44
setosa setosa setosa setosa setosa setosa setosa
67 69 70 106 123 139 143
versicolor versicolor versicolor virginica virginica virginica virginica
148
virginica
Levels: setosa versicolor virginica
> table(iris.test$Species,preditos)
preditos
setosa versicolor virginica
setosa 7 0 0
versicolor 0 3 0
virginica 0 0 5
</code>
Bibliografias
- [1998, book]
- Johnson, R. A., & Wichern, D. W. (1998). Applied Multivariate Statistical Analysis Prentice Hall.
- [2002, book]
- Venables, W. N., & Ripley. (2002). Modern Applied Statistic with S. Springer.
Laboratórios de Estatística
== ==== Flaviane Peccin ==== ==
Artigo: Fatores de Hipertensão usando Redes Neurais Kohonen
Apresentação: 05/09/2007 - Grupo II