Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 06b Análise Exploratória de Dados Linguagem R Max Pereira
Linguagem R O R é ao mesmo tempo uma linguagem de programação e um ambiente para computação estatística, modelagem e visualização de dados. Criada na Universidade de Auckland, Nova Zelândia, originada da linguagem S, trata-se de uma linguagem especializada em computação com dados.
Primeiros Passos A execução do R faz tipicamente aparecer uma linha de comando com o prompt do R (> ). A linguagem é case-sensitive. Logo objeto OBJETO. Pode ser considerada uma linguagem de matriz. É orientada a objeto. Tudo poder armazenado como um objeto do R.
Primeiros Passos O comando R.version fornece um série de informações sobre a versão do R, bem como sobre o computador onde o R está sendo executado.
Primeiros Passos Para terminar a execução do R basta executar o seguinte comando, > q() Ao executar este comando irá aparecer uma mensagem. Se a resposta for Sim, o R guardará a informação contida na memória do computador para permitir sua futura utilização.
Primeiros Passos Para saber o diretório (pasta) atual do R basta executar o comando: > getwd() Para alterar este diretório esse o comando: > setwd()
Primeiros Passos Ajuda no R help.start() # ajuda em geral help.(sqrt) # ajuda sobre a função sqrt?sqrt # igual ao help(sqrt) apropos( sq ) # lista todas as funções com a string sq. example(sqrt) # mostra um exemplo da função sqrt.
Criando scripts Por exemplo: x = 10 y = 15 x + y Vamos salvar como soma.r source("soma.r") # executará o soma.r Por padrão o source não mostra na tela nem os comandos executados, nem seus resultados, mas todos os objetos foram criados.
Criando scripts Para verificar os objetos criados utilize o comando: > ls() Para visualizar todos os comandos e resultados use: > source( soma.r", echo=true, print.eval=true )
Pacotes R Quando você faz o download do R do CRAN (Comprehensive R Archive Network), você tem o sistema R básico. O sistema básico possui funcionalidades básicas. Uma das razões que fazem com que o R seja muito útil é a sua coleção de pacotes que estende a sua funcionalidade. Os pacotes R são desenvolvidos e publicados pela comunidade R.
Obtendo os Pacotes O principal local para obter os pacotes R é o CRAN. Para aplicações biológicas, muitos pacotes estão disponíveis no Bioconductor Project (http://www.bioconductor.org/) Para obter informações sobre os pacotes disponíveis no CRAN você pode utilizar a função: available.packages() a <- available.packages() head(rownames(a), 10) ## Mostra o nome dos 10 primeiros pacotes
Obtendo Pacotes Há mais de 8.189 pacotes disponíveis no CRAN, sobre uma grande variedade de tópicos. Uma lista de alguns tópicos está disponível no link Task Views.
Instalando os pacotes R Os pacotes podem ser instalados utilizando a função install.packages(). Essa função faz o download do pacote do CRAN e o instala no computador. install.packages( nome do pacotes ) install.packages(c( pacote 1, pacote 2, pacote 3 ))
Carregando os Pacotes. A instalação do pacote não o deixa imediatamente disponível, você deve carregá-lo. A função library() é usada para carregar o pacote. library(nome do pacote)
O R tem vários objetos onde podemos armazenar diversos tipos de dados. No entanto, são os data frames que se revelam como os mais adequados para armazenar tabelas de dados. O R disponibiliza diversas tabelas de dados que podem ser usadas, por exemplo, para testes de análise exploratória de dados.
Para sabermos os dados que estão atualmente disponíveis, podemos usar o comando: > data() Se pretendermos usar algum dos conjuntos de dados podemos usar o mesmo comando. > data(iris) Assim, passa a estar disponível um objeto (tipicamente um data frame) com o nome iris, contendo o respectivo conjunto de dados.
Arquivos em formato texto Os arquivos de texto são uma das formas mais comuns de armazenar dados. Diversas aplicações permitem exportar dados armazenados para arquivos de textos em formatos particulares, como por exemplo, o formato CSV (Comma Separated Values). Esta é muitas vezes a forma mais simples de importar para o R os dados de uma aplicação qualquer.
Para ler um arquivo CSV a função read.csv() é a mais apropriada. Note que criamos um data frame chamado dados para receber as informações do arquivo csv. As funções nrow () e ncol() informam, respectivamente, o número de linhas e colunas do conjunto de dados.
Conjunto de dados para avaliar uma carteira de crédito para mapeamento de futuros empréstimos. Atributos: Tempo de emprego Ocupação Tempo de residência Status da residência Saldo devedor Pagou
Estatísticas descritivas (análise numérica): função summary()
Análise descritiva por subgrupos dos dados usando a função by()
Podemos ver unicamente os dados, ou parte deles, sem precisar listar todo o data frame.
Análise gráfica para explorar o comportamento e a relação entre as variáveis através de gráficos. Em um primeiro momento podemos analisar a distribuição de uma variável e a primeira abordagem é o uso de histogramas. Para a construção do histograma usamos a função hist().
Há uma variedade de funções gráficas disponíveis na Linguagem R, para análise de distribuição. Por exemplo, density() barplot() pie()
Depois de analisar a distribuição de variáveis individuais, podemos investigar a relação entre duas variáveis. As funções cov() e cor(), respectivamente nos fornecem a covariância e correlação entre variáveis.
Conjunto de dados que lista estimativas de percentuais de gordura, determinada pelo peso, densidade, idade e várias medidas de circunferências de partes do corpo, de 252 homens.
Note que o conjunto de dados (csv) foi carregado para um data frame com o nome dados. Abdomen, Densidade, Idade, Peso, Altura, Pescoço, Peito e Gordura são alguns atributos do conjunto de dados.
Gráfico de dispersão: são os gráficos mais utilizados para estudar a relação entre duas variáveis. A função genérica no R para gráficos de dispersão é a função plot(). > plot(x = dados$gordura, y = dados$abdomen)
Podemos usar uma função adicional que insere no gráfico de dispersão uma linha nãoparamétrica de tendência (smooth ou suavização). > scatter.smooth(dados$gordura, dados$abdomen, col = blue )
O R fornece funções para visualização da estrutura de correlação, formado por várias colunas, muito útil para criação de gráficos de dispersão de variáveis aos pares. > pairs(dados[,c("gordura","abdomen","idade","peso")])
O R ainda fornece uma série de outros gráficos disponíveis em vários pacotes. Note que, para a utilização dessas funções (gráficos), é necessário carregar os pacotes e, em alguns casos, sua instalação também será necessária.
O R tem algumas funções que permitem interações com os gráficos. Uma delas é a identificação de observações no gráfico - identify(). Ao executar a função, o R entra em modo interativo. Ao posicionar o mouse sobre uma observação no gráfico e clicar, o R identifica a observação.