Escolar Documentos
Profissional Documentos
Cultura Documentos
2 0 1 6
1
REITOR
Prof. PAULO AFONSO BURMANN
VICE-REITOR
Prof. PAULO BAYARD DIAS GONÇALVES
1. INTRODUÇÃO
O sistema R é uma linguagem e ambiente para computação estatística e gráficos, que
fornece uma ampla variedade de técnicas estatísticas (modelagem linear e não linear, testes
estatísticos clássicos, análise de séries temporais, classificação, agrupamento, ...) e gráficos,
sendo altamente extensível. Disponível como Software Livre sob os termos da Licença Pública
Geral GNU da Free Software Foundation na forma de código fonte, compila e funciona em uma
grande variedade de Plataformas UNIX e sistemas similares (incluindo FreeBSD e Linux), e
também em Windows e MacOS.
O termo “ambiente” pretende caracterizar R como um sistema totalmente planejado e
coerente, em vez de uma aglomeração de ferramentas muito específicas e inflexíveis, como é o
caso com outros softwares de análise de dados.
Uma das grandes vantagens em se usar o R é que o usuário tem total controle sobre o que
está acontecendo e também tem de compreender totalmente o que deseja antes de executar uma
análise. Outra vantagem é que por ser um software livre, a citação do R em artigos é permitida e
até aconselhável. Para saber como citar o R, digite citation() na linha de comando. Para citar um
pacote específico, digite citation() com o nome do pacote entre aspas dentro dos parênteses.
O Projeto R é de uma colaboração internacional de vários pesquisadores que se
comunicam através de uma eficiente lista de discussão pela Internet. Com isso, não só “bugs”
(defeitos de programação) são detectados e corrigidos, como também novos módulos contendo
métodos estatísticos recentemente implementados são regularmente disponibilizados e
atualizados na rede.
Sendo assim, um pesquisador em algum lugar do mundo precisou desenvolver uma
aplicação numa área que não é coberta nem pelo módulo básico nem pelos módulos de
colaboradores existentes. O que esse pesquisador faz é desenvolver o que é chamada de uma
biblioteca para o R com as funções que ele criou e utilizou, disponibilizando-as na rede. A
vantagem é que a biblioteca pode ser usada por diferentes pessoas, que irão eventualmente
reportar erros nas funções, que podem então ser atualizadas pelo seu criador.
2. BAIXANDO E INSTALANDO R
a) Entrar no site: http://www.r-project.org
3
3. AMBIENTE R
Na janela inicial do R (Console), é apresentado o prompt ( > ), que é o prompt de linhas
de comandos do R. Nas linhas de comandos podem se editados comandos do R ou expressões
algébricas. Se uma linha de comando está incompleta, aparecerá um sinal de +, indicando que
deve continuar a digitar aquela linha.
Para executar um comando ou calcular o valor da expressão algébrica da linha de
comandos, basta usar a tecla <ENTER>.
- Diretório de trabalho
> dir()
3.1 PACOTES R
O R é um ambiente de programação e existem atualmente mais de 3.000 pacotes que
desempenham funções específicas e que precisam ser instalados e carregados
independentemente.
Pacotes (packeges) ou bibliotecas (library) são conjuntos de funções, exemplos, e
documentações desenvolvidas para determinadas tarefas. No R podem-se encontrar pacotes
5
Com este comando é solicitado o CRAN onde ele será acessado. Sugere-se que use o
mais próximo de sua unidade.
O pacote instalado permanece no seu computador até que você o remova. Para usá-lo
você precisa disponibilizá-lo (requerê-lo) a cada vez que entrar no R.
4. CALCULOS E FUNÇÕES
Vamos iniciar mostrando o R como calculadora. Por exemplo, tente fazer uma conta
simples:
> 3+7
Repare que o resultado da operação é precedido por um [1]. Isto é apenas para indicar que
o resultado “10” é o primeiro (e nesse caso único) elemento retornado pelo programa. Exemplos:
- Aritméticos:
Adição (+), subtração (-), multiplicação (*), divisão (/), potenciação (^ ou **).
> 3^2
- Lógicos:
igual a ( == ), menor (<) , maior (>) , menor ou igual (<=), maior ou igual (>=) e
diferente (!=).
> pi>2
> 10==15
- Funções aritméticas
Raiz quadrada
> sqrt(125)
7
Logaritmo de x na base n
> log(2187, base=3)
Logaritmo neperiano
> log(2187)
Logaritmo decimal
> log10(2187)
Seno
> sin(45)
Vamos aproveitar esse exemplo para explicar algumas características básicas das funções
disponíveis no R. Todas têm a forma: função (argumento(s) obrigatório(s), argumento(s)
opcional(is))
Sendo que os argumentos opcionais podem ter um valor padrão pré-estabelecido ou não.
Os argumentos estarão sempre entre parênteses sendo separados por vírgula. Se você deixar o
primeiro argumento em branco, vai receber uma mensagem de erro:
> log(, base=3)
Repare que o programa já indica que o argumento (que ele chama de “x”) obrigatório não
foi fornecido e que não existe nenhum padrão (default). Agora, deixe o segundo argumento em
branco:
> log(2187,)
Dessa vez não houve mensagem de erro, mas o resultado é diferente do que a gente
obteve anteriormente. Se não houve queixa do programa quanto ao segundo argumento, ele deve
ter um default pré-estabelecido
A função log() precisa de um argumento x que não tem default e também de um
argumento base que tem um valor pré-estabelecido, exp(1).
8
> exp(1)
> log(2187, base=2.718282)
Se você trocar a ordem, porém especificando quem é quem, não haverá confusão:
> log(base=3,2187)
5. CLASSES DE OBJETOS
Objeto para o R significa tanto um banco de dados quanto a saída de uma função ou até
mesmo uma fórmula. Para criar um objeto no R, seja ele qual for, você deverá sempre usar o
operador <-, apontando para o nome de um objeto.
O R trabalha com as seguintes classes (ou tipos) de objetos: variável, vetor, lista, fator,
matriz e data.frame. Cada objeto tem: nome, conteúdo e atributo.
Os nomes de objetos são atribuídos pelo usuário e devem iniciar com uma letra
(maiúscula ou minúscula), seguido de combinações de letras, números e alguns caracteres (desde
que não reservados pelo R). O conteúdo é o valor do objeto. Os atributos podem ser numérico,
caractere (label), complexo ou lógico.
O R faz diferença entre caracteres maiúsculos e minúsculos. Todo objeto criado fica
residente no ambiente R até que feche o software ou que o remova.
9
- Os símbolos " <- " , "->" e " = " são usados para atribuição de valores.
> A <- 25
>A
5.1 VARIÁVEL
Objeto ao qual é atribuído um valor que pode ter qualquer dos atributos.
> x <- 10
> x
> nome <- "Curso R"; nome
> y <- 3- 2i; y
> res <- (x==20); res
5.2 VETOR
Objeto com n valores (de mesmo atributo) que podem ser referenciados por um índice, ou
seja, coleção ordenada de elementos do mesmo tipo (mode) (valores numéricos, lógicos,
alfanuméricos, ...).
- Vetor numérico
Um dos métodos de criar um vetor numérico no R é através da função c(). A letra c
representa a função "concatenate" que concatena os valores entre parênteses.
> v1 <- c(2, 23, 14)
- Vetor caracter
Também é possível criar vetores de caracteres. No R, sequências de caracteres textuais
são sempre delimitados por aspas.
> v2 <- c("Trat1", "Trat2", "Trat3", "Trat4"); v2; v2[3]
> nomes <- c("Alexandre", "Diego", "Vitoria"); nomes
Os argumentos desta função concatenação podem ser os próprios vetores, pelo que c(x,y)
retorna a concatenação dos vetores x e y. Esta função pode ter vários argumentos.
> c(x, 0, x)
> nomes <- c(nome,"Marcelo")
11
> nomes
5.3 LISTA
Objeto com n valores (que podem ter diferentes atributos) que podem ser referenciados
por um índice. É uma coleção ordenada de objetos, que podem ser de tipos diferentes (vetores
numéricos, vetores lógicos, matrizes, listas, funções, ...). Chamamos de componente cada um dos
objetos da lista. Os componentes são numerados e podem ter um nome associado.
> curso <- list(id = 1, nome="Rafael", siape = 1971611, notas=c(7, 7),)
O resultado de muitas funções é uma lista. Os componentes de uma lista são indexados e
podem ser referidos pelo seu índice, utilizando parênteses ou se previamente nomeados, podem
também ser referidos pelo nome.
- Para referenciar a lista como um todo use: nome_da_lista.
> curso
Observação: A maioria dos relatórios dos procedimentos estatísticos sai como lista.
5.3 FATOR
É um tipo particular de vetor, onde cada elemento repetido (uma ou mais vezes) é
considerado um nível do fator (um fator é utilizado para criar uma variável categórica). Muito
usado nas análises estatísticas – variáveis classificatórias.
> trat <- as.factor(c(0,0,0,0,10,10,10,10,20,20,20,20)); trat
> mode(trat)
- Para saber a classe (alguns tipos de objetos (variável e vetor) o comando informa o
atributo).
> class(trat)
É importante notar a diferença entre um vetor de caracteres e um vetor que seja um fator
que são objetos de classes diferentes. O primeiro simplesmente guarda os seus elementos
enquanto o segundo possui atributos que nesta caso incluem os níveis do fator.
> estados <- c("PR", "SC", "RS")
> estados
13
> class(estados)
> estados <- factor(estados)
> estados
> class(estados)
Um fato relevante a respeito da manipulação de fator é que uma seleção de parte dele que
exclua um certo valor não exclui este valor dos atributos do vetor, como mostra o caso abaixo.
> estados_sel <- estados[-3]
> estados_sel
Da mesma forma pode-se criar um vetor e definir para eles níveis, mesmos que estes
níveis não estejam entre os elementos atualmente existentes no vetor.
> est <- c("SC", "PR", "SC", "PR", "RS", "SP", "RS", "SP", "ES", "PR", "RJ",
"ES"); est
> table(est)
> est_mg <- factor(est, levels = c("PR", "SC", "RS", "MG", "SP", "RJ", "ES"));
est_mg
> table(est_mg)
5.3 MATRIZ
Objeto com n m valores (n linhas e m colunas), com o mesmo atributo, que podem ser
referenciados por dois índices. Uma matriz é um arranjo bi-dimensional de dados, todos do
mesmo tipo, ou seja, numérico ou de caracteres. Uma matriz é definida pelo número de linhas (l),
número de colunas (c) e um conjunto de (l×c) valores.
> m <- matrix(1:12, 3, 4); m
- A opção byrow=TRUE faz com que os elementos sejam dispostos por linha.
> m <- matrix(1:12, 3, 4, byrow=TRUE) ; m
- Um objeto do tipo matrix tem associado o atributo dim que indica a sua dimensão, isto
é, nº de linhas e nº de colunas.
14
> dim(m)
Neste caso, os dados teriam que ser organizados com três colunas: Tratamento, Repetição
e Pesos, sendo Tratamento e Repetição como fatores e Peso como vetor. Os dados precisam ser
organizados da forma:
tr rp peso
1 1 25,5
1 2 28,4
1 3 24,1
1 4 27,5
1 5 26,3
2 1 31,6
2 2 30,5
2 3 29,3
2 4 31,1
2 5 29,4
16
6 PLANEJAMENTO EXPERIMENTAL
- Casualização
> trat<-rep(c("a","b","c","d"),each=5)
> ue<-sample(1:20)
> casdic<- data.frame(Tratamento = trat, ue = ue)
> casdic
- Casualização
> blo <- c("I","II","III","IV")
> lb <- length(blo)
> trat <- c("a","b","c","d")
> lc <- length(trat)
> comb <- expand.grid(Tratameto = trat, Bloco = blo)
> ue <- sample(lc)
> for (k in 2:lb) ue <- c(ue,sample(lc))
> casdbc <- data.frame(comb, Unidade=ue)
> casdbc
(resíduo).
- Casualização
> require(agricolae)
> trt <- c("A", "B", "C", "D")
> outdesign <- design.lsd(trt, kinds="Super-Duper")
> print(outdesign$sketch)
7 ESTATÍSTICA DESCRITIVA
São estatísticas que trazem informações sobre a posição, a dispersão e a distribuição de
um conjunto de valores numéricos.
As principais estatísticas descritivas são: Medidas de posição, Medidas de dispersão e
Medidas separatrizes.
a) Medidas de posição
São medidas que indicam um ponto em torno do qual se concentram os dados (a posição
dos dados na reta real R). Sejam x1, x2, x3, ..., xn, n valores numéricos.
- Média aritmética
> Mean(x)
- Mediana
> Median(x)
b) Medidas de dispersão
Como o próprio nome diz, são medidas que indicam quão dispersos encontram-se os
valores.
- Amplitude total
> At<- max(x) - min(x)
20
- Variância
>Var(x)
- Desvio Padrão
> sd(x)
- Coeficiente de variação
> cv <- function (z)(sd(z)/mean(z))*100
> cv (x)
c) Medidas separatrizes
São medidas que representam as posições dos valores do conjunto, dividindo-o em partes
iguais e podem ser: quartis, decis etc.
Os quartis dividem o conjunto de valores em quatro partes iguais, como mostra a Tabela a
seguir:
Tabela 2 - Descrição dos quartis.
Estatística Notação Interpretação
1º quartil q1 25% dos dados o precedem
2º quartil q2 = Mediana 50% dos dados o precedem
3º quartil q3 75% dos dados o precedem
A diferença (q3-q1) é denominada intervalo interquartílico.
> quantile(x)
> IQR(x)
d) Resumo geral
> Summary(x)
8 ESTATÍSTICA PARAMÉTRICA
Os dados são provenientes de um tipo de distribuição de probabilidade e faz inferências
sobre os parâmetros da distribuição.
Os pressupostos dos testes paramétricos são: distribuição normal, homogeneidade dos
dados e variáveis intervalares e contínuas.
- Distribuição Normal
> shapiro.test(y)
- Variância Homogênea
> bartlett.test(y~x)
- Diagrama de Caixa
> boxplot(y~x)
> plot(x,y)
8.1.1 DIC
- Dados contidos no arquivo DIC.txt
> DIC<-read.table("DIC.txt",head=T,dec=",")
> attach(DIC)
> rtlett.test(Y~TR)
> boxplot(Y~TR)
- Análise de variância
> anova<-aov (moddic)
> summary(anova)
8.1.2 DBC
- Dados contidos no arquivo DBC.txt
> DBC<-read.table("DBC.txt",head=T,dec=",")
> attach(DBC)
- Análise de variância
> anovadbc<-aov (moddbc)
> summary(anovadbc)
23
8.1.3 DQL
- Dados contidos no arquivo DQL.txt
> DQL<-read.table("DQL.txt",head=T,dec=",")
> attach(DQL)
- Análise de variância
> anovadql<-aov (moddql)
> summary(anovadql)
- DIC
> tukeydic<-TukeyHSD(anovadic)
> tukeydic
> plot(tukeydic)
24
- Removendo objetos
> detach(DIC)
> rm(list=ls(all=TRUE))
- DBC
> tukeydbc<-TukeyHSD(anovadbc)
> tukeydbc
> plot(tukeydbc)
- Removendo objetos
> detach(DBC)
> rm(list=ls(all=TRUE))
- DQL
> tukeydql<-TukeyHSD(anovadql)
> tukeydql
> plot(tukeydql)
- Removendo objetos
> detach(DQL)
> rm(list=ls(all=TRUE))
8.3 Regressão
Estudo da relação linear entre duas variáveis quantitativas. Regressão designa também
uma equação matemática que descreva a relação entre duas ou mais variáveis.
- Dados contidos no arquivo REG.txt
> REG<-read.table("REG.txt",head=T,dec=",")
> attach(REG)
> REG
25
- Análise de correlação
> cor<-cor(trat,prod)
> cor
9 ANEXOS
9.1 Tarefas
MINISTÉRIO DA EDUCAÇÃO
UNIVERSIDADE FEDERAL DE SANTA MARIA
PRÓ-REITORIA DE GESTÃO DE PESSOAS
COORDENADORIA DE INGRESSO, MOBILIDADE E DESENVOLVIMENTO
NÚCLEO DE EDUCAÇÃO E DESENVOLVIMENTO
INTRODUÇÃO À ANÁLISE ESTATÍSTICA COM AMBIENTE R
TAREFA 1
Trat. 1 1 1 1 1 2 2 2 2 2
Pesos 37,4 36,9 37,8 36,0 37,3 37,8 39,6 36,9 37,8 38,5
TAREFA 2
2.1 Digitar no Excel os dados a seguir, uma variável por coluna e um registro por linha:
NOME PRATICA PROVA MEDIA
Bartolomeu Pereira 8,0 6,0 7,0
Custódio de Alvarenga 9,0 6,0 7,5
Gerônimo da Silva 6,0 4,0 5,0
José de Jesus 10,0 7,0 8,5
Maria Joaquina 8,0 5,0 6,5
Pedro de Abreu 9,0 3,0 6,0
Pietro Guarabira 10,0 8,0 9,0
Rosalina da Penha 7,0 4,0 5,5
Terencio Rodrrigues 7,0 9,0 8,0
Teresa Simão 9,0 4,0 6,5