Minicurso I
Análise Exploratória e Modelação com R
1. Introdução ao R
Amílcar Oliveira ; Teresa Oliveira
amilcar.oliveira@...
Tópicos
1. Introdução
2. Instalação do programa R
3. Os primeiros passos
4. Objetos
5. Funcionalidades
6. Manipulação de D...
1. Introdução
 R é um sistema para computação estatística e gráficos. Consiste numa
linguagem e num ambiente de operação ...
1. Introdução
 Permite fazer análises estatísticas de forma tão ou mais potente que
outros programas não gratuitos (SAS, ...
1. Introdução (Páginas na Internet sobre o sistema R)
 http://www.r-project.org - Homepage do R, a partir desta
página po...
1. Introdução (Editores)
6
R Editor
Word Pad
Tinn R
MINICURSO - CIAEEAR
MANAUS (AM), 12-15 AGOSTO 2014
2. Instalação do programa R
7
Passo 1: Obter o ficheiro de instalação
Através da internet indo directamente à página do R ...
2. Instalação do programa R
8
Clicando sobre o link R-3.1.1.tar.gz surgirá esta janela e agora podemos
optar por guardar o...
2. Instalação do programa R
9
Clicando então em Guardar como devemos procurar a pasta de destino, como no
exemplo seguinte...
2. Instalação do programa R
10
No caso do sistema operativo utilizado ser Windows devemos então clicar sobre
Download R fo...
2. Instalação do programa R
11
Aparecerá então uma nova página, contendo para além do ficheiro de instalação
principal, ou...
2. Instalação do programa R
12
Para guardar o ficheiro clique na opção correspondente Guardar como e de seguida
seleccione...
2. Instalação do programa R
13
Passo 2: Instalação do R
Clique em Executar ou caso tenha o ficheiro de execução guardado n...
2. Instalação do programa R
14
O R possui uma licença do tipo
GNU General Public Licence.
Pode ler o Contrato de Licença d...
2. Instalação do programa R
15
Selecione as componentes a instalar e clique em Seguinte
MINICURSO - CIAEEAR
MANAUS (AM), 1...
2. Instalação do programa R
16
Escolha o nome da pasta para o atalho que será criado no Menu Iniciar, ou aceite a
sugestão...
2. Instalação do programa R
17
Durante a instalação deverá ver uma janela deste tipo
MINICURSO - CIAEEAR
MANAUS (AM), 12-1...
2. Instalação do programa R
18
E finalmente, a instalação foi realizada com sucesso. Parabéns.
Clique em Concluir para fec...
3. Os primeiros passos (Como iniciar uma sessão?)
 Criar na área de trabalho uma nova pasta (por exemplo, TrabalhoR)
onde...
3. Os primeiros passos (Ambiente de trabalho)
20
Fig. 2 Ambiente de trabalho do Software R
R GraphicsR Console
Menu princi...
• O R funciona fundamentalmente no modo “pergunta-resposta”;
• Os comandos (frases que se escrevem numa certa sintaxe) int...
• Para atribuirmos um valor a um objeto usa-se o operador <- ;
• O nome de um objeto pode ser escolhido usando letras e nú...
Cálculo do valor duma expressão - o resultado é apresentado no visor e não
é registado em memória.
> 2+sqrt(5)-2/3
[1] 3.5...
 O comando help()
é habitualmente usado para obter informação sobre uma função específica.
Por exemplo, para obter inform...
4. Objetos
 Os objetos são entidades que o R cria e manipula e que são guardados em
memória.
 O R funciona executando fu...
4. Objetos
26
 Para listar os objetos que se encontram disponíveis pode utilizar-se
qualquer uma das seguintes opções:
> ...
4. Objetos (Workspace)
27
 Apresenta a coleção de objetos disponíveis numa sessão de trabalho, e pode
ser guardada num fi...
4. Objetos
28
 Vector
 Matrix
 List
 Data Frame
MINICURSO - CIAEEAR
MANAUS (AM), 12-15 AGOSTO 2014
 Um vector é um conjunto ordenado de elementos do mesmo tipo
(mode) (valores numéricos, lógicos, alfanuméricos, ...);
 U...
30
4. Objetos (Vector)
Um vector pode conter os símbolos especiais NA e NaN, que designam
respetivamente um valor desconhe...
31
4. Objetos
(outras formas de criar um vetor)
n1:n2 sequência de valores, de uma em uma unidade, começando em n1 e
termi...
32
4. Objetos (Matrix)
 Uma matrix é um conjunto de dados, todos do mesmo tipo, referenciados por
dois índices (i,j). Tra...
33
4. Objetos (Matrix)
 Para os valores aparecerem antes dispostos por linhas, usa-se byrow=T
> A<-matrix(c(2,3,4,2,1,2,5...
34
4. Objetos (Matrix)
 Um vetor pode facilmente ser transformado numa matriz
> V <- c(4,5,-2,2,-1,6) # V é um vetor
 E ...
35
4. Objetos (Matrix - indexação)
 A[i,j] é o elemento de A que está na linha i e na coluna j
> A[2,1] # elementos da se...
36
4. Objetos (Matrix - operações)
 As operacoes +, -, *, /, ^ são realizadas elemento a elemento.
 Todos os objetos do ...
37
4. Objetos (Matrix - operações)
 O operador multiplicação de matrizes é %*%
 Se A e B são matrizes encadeadas dos tip...
38
4. Objetos (algumas funções envolvendo matrizes)
 t(A) - calcula a transposta da matriz A;
 isSymmetric(A) - testa se...
39
4. Objetos (List)
 Listas (List) são estruturas genéricas e flexíveis que permitem armazenar
diversos formatos num uni...
40
4. Objetos (Data frame)
 Uma data frame é semelhante a uma matriz, mas na qual as colunas podem
ser de tipos diferente...
41
4. Objetos (Data frame)
 Os elementos de uma data frame podem ser referidos (como numa matriz)
indicando a linha e a c...
42
4. Objetos (Data frame – função attach)
 As consultas a data frames podem ser simplificadas utilizando a função
attach...
5. Funcionalidades (Algumas funções usadas sobre vetores
numéricos)
 length(x) - número de elementos do vetor x;
 sum(x)...
Operadores
44
Operador Descrição
+
-
*
/
^
=
!=
<
>
<=
>=
&
|
!
Adição
Subtracção
Multiplicação
Divisão
Potenciação
Igual
...
Algumas funções matemáticas
45
Função Descrição
log(x)
log10(x)
exp(x)
sin(x)
cos(x)
tan(x)
asin(x)
acos(x)
atan(x)
sqrt(x...
Funções Estatísticas
46
Função Descrição
mean(x)
sd(x)
var(x)
median(x)
quantile(x,p)
cor(x,y)
range(x)
length(x)
Média
De...
Distribuições de Probabilidade
47
Distribuição Descrição
rnorm(n,mean,sd)
runif(x,min,max)
rt(x,df)
rf(x)
rexp(x)
rchisq(x...
5. Funcionalidades (o R funcionando como calculadora)
48
A partir da linha de comando do R podemos somar …
> 3+2
[1] 5
......
5. Funcionalidades
49
Mas podem ocorrer erros quando o R não entende o que foi digitado, por exemplo:
> 5,1*3 # O R usa o ...
5. Funcionalidades
50
Podemos designar x como a sequência 1 a 8
> x<-1:8
> x
[1] 1 2 3 4 5 6 7 8
e utilizar a sequência x
...
51
Podemos efetuar outro tipo de algumas operações matemáticas simples
utilizando o R.
Vejamos mais alguns exemplos:
20^2 ...
52
 De notar que apenas precisamos do último comando para obter a resposta,
no entanto é importante entender a sequência ...
53
5. Funcionalidades (Gráficos de funções)
Vejamos o seguinte exemplo:
(b) 𝑓 𝑥 = 1 −
1
𝑥
cos 𝑥 , 𝑝𝑎𝑟𝑎 0 ≤ 𝑥 ≤ 100
> x <- ...
54
6. Manipulação de Dados
Podemos dar entrada dos dados no R de diferentes formas, consoante a
dimensão do conjunto de da...
55
 Usando a função scan()
Esta função permite a leitura dos dados diretamente a partir do ambiente R, ou
seja, coloca o ...
56
 Usando a função edit()
O comando edit(data.frame()) abre uma folha para a digitação dos
dados que são armazenados com...
57
 Lendo os dados a partir de um ficheiro de texto
 A forma mais simples de fazer isso é usar dados em formato texto (a...
58
 Lendo os dados a partir de um ficheiro de texto
Exemplo 2
Consideremos agora a importação para o R dos dados deste fi...
59
Exemplo 3
1º) Importar para o R os dados deste ficheiro texto.
2º) Clicar no link para visualizar o ficheiro.
3º) Copia...
60
MINICURSO - CIAEEAR
MANAUS (AM), 12-15 AGOSTO 2014
The Future of Statistics by Bradley Efron
AMSTAT News, September 200...
Próximos SlideShares
Carregando em…5
×

Análise exploratória e modelação com R parte 1

252 visualizações

Publicada em

Pacote estatístico R, instalação, introdução e funcionalidades

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
252
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
9
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Análise exploratória e modelação com R parte 1

  1. 1. Minicurso I Análise Exploratória e Modelação com R 1. Introdução ao R Amílcar Oliveira ; Teresa Oliveira amilcar.oliveira@uab.pt teresa.oliveira@uab.pt DCeT, Universidade Aberta & CEAUL, Universidade de Lisboa Manaus, 12 a 15 de agosto, 2014
  2. 2. Tópicos 1. Introdução 2. Instalação do programa R 3. Os primeiros passos 4. Objetos 5. Funcionalidades 6. Manipulação de Dados 2 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  3. 3. 1. Introdução  R é um sistema para computação estatística e gráficos. Consiste numa linguagem e num ambiente de operação com gráficos, acesso a certas funções do sistema e capacidade de executar comandos armazenados em arquivos (scripts);  Trata-se de uma aplicação de distribuição gratuita, código fonte aberto, faz parte do GNU Project http://www.gnu.org/ , desenvolvido por Ross Ihaka e Robert Gentleman na década de 90 a partir da linguagem S;  Executável nos principais sistemas operativos: Linux, Macintosh e Windows;  Sistema gerido por rede mundial de investigadores;  Instalação simples, linguagem acessível;  Excelentes capacidades gráficas; 3 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  4. 4. 1. Introdução  Permite fazer análises estatísticas de forma tão ou mais potente que outros programas não gratuitos (SAS, SPSS, etc...);  Permite importar dados de outros programas (Access, Excel, SPSS, SAS, etc...);  Conjunto integrado de ferramentas que permitem a manipulação e análise de dados, o cálculo numérico e a produção e visualização de gráficos;  Linguagem interpretada (os comandos são imediatamente executados);  Linguagem orientada por objetos (os dados manipulados são armazenados na memória ativa do computador na forma de objetos, que têm um nome e aos quais se podem aplicar ações); • Sempre que estivermos a referir-nos a um código ou a um output de texto do R, usaremos a fonte Courier New. 4 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  5. 5. 1. Introdução (Páginas na Internet sobre o sistema R)  http://www.r-project.org - Homepage do R, a partir desta página podemos aceder a todas as outras páginas relacionadas.  http://cran.br.r-project.org/ O servidor mirror (espelho) brasileiro (UFPr)  http://cran.r-project.org/other-docs.html - documentos de ajuda e manuais em formato pdf. 5 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  6. 6. 1. Introdução (Editores) 6 R Editor Word Pad Tinn R MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  7. 7. 2. Instalação do programa R 7 Passo 1: Obter o ficheiro de instalação Através da internet indo directamente à página do R em http://www.r-project.org visualizamos: No menu do lado esquerdo, na secção download clique em CRAN e de seguida escolha um dos servidores disponíveis para a transferência do ficheiro. Clicando então sobre o endereço atrás indicado vamos para esta nova página. Aqui devemos em primeiro lugar fazer o download do ficheiro com o Source code numa pasta para mais tarde executarmos. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  8. 8. 2. Instalação do programa R 8 Clicando sobre o link R-3.1.1.tar.gz surgirá esta janela e agora podemos optar por guardar o ficheiro numa pasta ( por exemplo c:ProgramasR ). MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  9. 9. 2. Instalação do programa R 9 Clicando então em Guardar como devemos procurar a pasta de destino, como no exemplo seguinte: No final aparecerá a mensagem de transferência concluída. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  10. 10. 2. Instalação do programa R 10 No caso do sistema operativo utilizado ser Windows devemos então clicar sobre Download R for Windows e seremos conduzidos a Deve agora clicar na sub-directoria base para fazer a transferência do ficheiro principal de instalação, ou em contrib para escolher outros packages extra disponíveis. Pensemos agora apenas no caso da opção base para a instalação principal do R ou em install R for the first time, caso de trate da primeira instalação. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  11. 11. 2. Instalação do programa R 11 Aparecerá então uma nova página, contendo para além do ficheiro de instalação principal, outras informações que para a nossa tarefa atual não são relevantes. Agora clique sobre Download R 3.1.1 for Windows MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  12. 12. 2. Instalação do programa R 12 Para guardar o ficheiro clique na opção correspondente Guardar como e de seguida seleccione a pasta para onde será guardado Se optar pela execução do ficheiro inicia-se de imediato o Passo 2. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  13. 13. 2. Instalação do programa R 13 Passo 2: Instalação do R Clique em Executar ou caso tenha o ficheiro de execução guardado numa pasta: Procure o ficheiro R-3.1.1.tar.gz e descomprima-o para a pasta onde vai guardar o programa, por exemplo ( c:ProgramasRR-3.1.1 ). Procure agora o ficheiro de instalação R-3.1.1-win32.exe obtido atrás e execute-o. Em primeiro lugar seleccione o idioma do programa de instalação e clique em OK. Neste momento entrará no Assistente de instalação do R para Windows. Leia as instruções e clique em Seguinte nos próximos quadros: MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  14. 14. 2. Instalação do programa R 14 O R possui uma licença do tipo GNU General Public Licence. Pode ler o Contrato de Licença de Uso e de seguida clique em Seguinte. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  15. 15. 2. Instalação do programa R 15 Selecione as componentes a instalar e clique em Seguinte MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  16. 16. 2. Instalação do programa R 16 Escolha o nome da pasta para o atalho que será criado no Menu Iniciar, ou aceite a sugestão e clique em Seguinte MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  17. 17. 2. Instalação do programa R 17 Durante a instalação deverá ver uma janela deste tipo MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  18. 18. 2. Instalação do programa R 18 E finalmente, a instalação foi realizada com sucesso. Parabéns. Clique em Concluir para fechar o programa de instalação. Agora, se tudo correu bem, o R está pronto a ser usado, e terá sido criado um ícone no ambiente de trabalho ao qual pode recorrer para entrar na área de trabalho do R. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  19. 19. 3. Os primeiros passos (Como iniciar uma sessão?)  Criar na área de trabalho uma nova pasta (por exemplo, TrabalhoR) onde irão ser guardados os ficheiros de dados.  Iniciar o R através do menu:  Iniciar → Todos os programas → R → R 3.1.1 ou em alternativa, através  Atalho criado no ambiente de trabalho 19 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  20. 20. 3. Os primeiros passos (Ambiente de trabalho) 20 Fig. 2 Ambiente de trabalho do Software R R GraphicsR Console Menu principal MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  21. 21. • O R funciona fundamentalmente no modo “pergunta-resposta”; • Os comandos (frases que se escrevem numa certa sintaxe) introduzem-se a seguir à linha de comando ( > ) e são executados automaticamente ou após pressionar a tecla Enter; • Para selecionar comandos executados anteriormente usar: ↑ ou ↓ • Para percorrer a linha de comandos usar: ← ou → • Colocar o cursor no início / fim da linha de comandos: Home / End ; • Para terminar o R deve executar-se o comando q() ou fechar a janela da aplicação. 21 3. Os primeiros passos (Como funciona?) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  22. 22. • Para atribuirmos um valor a um objeto usa-se o operador <- ; • O nome de um objeto pode ser escolhido usando letras e números, combinações de letras e números. Ex: x<-2 , x2=c(1,2,3); Pode ainda ser usado o ponto ( . ) Ex: a.1<-5 , mas na atribuição do nome deve figurar sempre uma letra em primeiro lugar. • O simbolo cardinal # é ignorado pelo R e deve preceder qualquer comentário, Ex: > x=rnorm(10,0,1) # gera 10 valores com distribuição normal de média 0 e variância 1 • Usa operadores aritméticos, relacionais e lógicos; • Usa funções matemáticas, funções estatísticas e distribuições de probabilidade. 22 3. Os primeiros passos (Como funciona?) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  23. 23. Cálculo do valor duma expressão - o resultado é apresentado no visor e não é registado em memória. > 2+sqrt(5)-2/3 [1] 3.569401 > exp(3)+log(5/7) # log é logaritmo neperiano [1] 19.74906 Atribuição – o resultado da expressão é atribuído a um objeto e não é apresentado no visor. > x <- 5 # <- é o operador de atribuição > x [1] 5 > y <- 2+3/4*7^2 > y [1] 38.75 23 3. Os primeiros passos (Comandos Elementares) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  24. 24.  O comando help() é habitualmente usado para obter informação sobre uma função específica. Por exemplo, para obter informação sobre a função cos() pode utilizar-se qualquer uma das opções: > help(cos) > help(“cos") > ?cos  O comando help.search() permite pesquisar uma sequência de caracteres. Por exemplo: > help.search(“linear regression")  O comando help.start() acede a uma página com informação diversa sobre o R.  (Existe também Help no menu no ambiente de trabalho do R.) 24 3. Os primeiros passos (O comando help) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  25. 25. 4. Objetos  Os objetos são entidades que o R cria e manipula e que são guardados em memória.  O R funciona executando funções sobre objetos; (Exemplos: valores, vetores, matrizes, ...)  Cada objeto é caracterizado por um nome, conteúdo (sequência de elementos do objeto) e atributos (que especificam certas características do objeto).  Todos os objetos têm dois atributos intrínsecos: mode : tipo de elementos do objeto (numérico, alfanumérico, lógico, ...; length : número de elementos do objeto. Exemplo: > x<-c(1,2,3,4,5) > mode(x) [1] "numeric" > length(x) [1] 5 25 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  26. 26. 4. Objetos 26  Para listar os objetos que se encontram disponíveis pode utilizar-se qualquer uma das seguintes opções: > ls() > objects()  Para mostrar alguma informação sobre os objetos: > ls.str()  Para eliminar objectos: > rm(objecto1, objecto2,...)  Para eliminar todos os objectos: > rm(list=ls()) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  27. 27. 4. Objetos (Workspace) 27  Apresenta a coleção de objetos disponíveis numa sessão de trabalho, e pode ser guardada num ficheiro com vista a sua utilização em futuras sessões.  No final de cada sessão é perguntado ao utilizador se pretende guardar o Workspace. Caso a resposta seja afirmativa, todos os objectos disponíveis em memória são guardados no ficheiro “.RData”, na pasta de trabalho em uso, podendo ser carregados na sessão do R seguinte. Podem os especificar qual a nossa pasta de trabalho usando: menu File → Change dir...  Para importar um ficheiro de objectos (por exemplo o ficheiro “.RData”): menu File → Load Workspace... MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  28. 28. 4. Objetos 28  Vector  Matrix  List  Data Frame MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  29. 29.  Um vector é um conjunto ordenado de elementos do mesmo tipo (mode) (valores numéricos, lógicos, alfanuméricos, ...);  Uma das formas de criar um vetor no R é através da função c();  c() é função designada função concatenação. > x <- c(1.54, 1.72, 1.67, 1.65, 1.59) > x [1] 1.54 1.72 1.67 1.65 1.59 > y <- c(FALSE, FALSE, TRUE, TRUE, FALSE) > y [1] FALSE FALSE TRUE TRUE FALSE > cores <-c (“Verde",“Vermelho",“Azul“, “Amarelo”) > cores [1] “Verde" “Vermelho" “Azul“ “Amarelo” 29 4. Objetos (Vector) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  30. 30. 30 4. Objetos (Vector) Um vector pode conter os símbolos especiais NA e NaN, que designam respetivamente um valor desconhecido e um valor não definido. > y <- c(NA, 53, 31, 15, 62) > sqrt(c(-1,1,2)) [1] NaN 1.000000 1.414214 Warning message: NaNs produced in: sqrt(c(-1, 1, 2)) MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  31. 31. 31 4. Objetos (outras formas de criar um vetor) n1:n2 sequência de valores, de uma em uma unidade, começando em n1 e terminando em n2 rep(v1,r) cria um vetor contendo r vezes o valor v1 seq(a1,a2,a3) cria uma sequência de números no intervalo [a1,a2], separados por intervalos de a3 unidades c(rep(a,b),rep(c,d)) concatena dois vetores em um, (b>a) e (d>c) (manipulação de vetores) rounded(v) arredonda o número ou vetor de números v para o inteiro mais próximo sort(v) apresenta os valores do vetor v por ordem crescente MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  32. 32. 32 4. Objetos (Matrix)  Uma matrix é um conjunto de dados, todos do mesmo tipo, referenciados por dois índices (i,j). Trata-se de uma generalização para duas dimensões de um vector.  Uma matrix é definida pelo número de linhas (n), numero de colunas (m) e um conjunto de (n×m) valores.  Com a função matrix() podemos criar matrizes. > A<-matrix(c(2,3,4,2,1,2,5,2,3),nrow=3,ncol=3) > A [,1] [,2] [,3] [1,] 2 2 5 [2,] 3 1 2 [3,] 4 2 3 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  33. 33. 33 4. Objetos (Matrix)  Para os valores aparecerem antes dispostos por linhas, usa-se byrow=T > A<-matrix(c(2,3,4,2,1,2,5,2,3),nrow=3,ncol=3,byrow=T) > A [,1] [,2] [,3] [1,] 2 3 4 [2,] 2 1 2 [3,] 5 2 3  Para obtermos a dimensão duma matriz: dim(A) > dim(A) [1] 3 3 Neste caso a matriz tem 3 linhas e 3 colunas MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  34. 34. 34 4. Objetos (Matrix)  Um vetor pode facilmente ser transformado numa matriz > V <- c(4,5,-2,2,-1,6) # V é um vetor  E por sua vez uma matriz pode ser transformada num vetor > as.vector(V) [1] 4 5 -2 2 -1 6 > dim(V)<-c(3,2) > V [,1] [,2] [1,] 4 2 [2,] 5 -1 [3,] -2 6 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  35. 35. 35 4. Objetos (Matrix - indexação)  A[i,j] é o elemento de A que está na linha i e na coluna j > A[2,1] # elementos da segunda linha e primeira coluna da matriz A  A[i,] é a linha i e A[,j] é a coluna j da matriz A. Estes objectos são do tipo vector > A[2,] # vetor constituido pelos elementos da segunda linha > A[,1] # vetor constituído pelos elementos da primeira coluna MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  36. 36. 36 4. Objetos (Matrix - operações)  As operacoes +, -, *, /, ^ são realizadas elemento a elemento.  Todos os objetos do tipo matrix envolvidos na expressão devem ter o mesmo atributo dim (isto é, o mesmo número de linhas e de colunas). > A*A [,1] [,2] [,3] [1,] 4 9 16 [2,] 4 1 4 [3,] 25 4 9 Nota: esta operação A*A não é a habitual multiplicação de matrizes definida em Álgebra Linear. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  37. 37. 37 4. Objetos (Matrix - operações)  O operador multiplicação de matrizes é %*%  Se A e B são matrizes encadeadas dos tipos dim(A)=c(n,k) e dim(B)=c(k,m), a matriz produto A%*%B é do tipo c(n,m). > A%*%V [,1] [,2] [1,] 15 25 [2,] 9 15 [3,] 24 26 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  38. 38. 38 4. Objetos (algumas funções envolvendo matrizes)  t(A) - calcula a transposta da matriz A;  isSymmetric(A) - testa se a matriz A é simétrica;  solve(A) calcula a inversa da matriz (quadrada) A;  solve(A,b) - calcula a solução do sistema Ax=b, onde A é uma matriz quadrada e b pode ser um vetor ou uma matriz;  det(A) calcula o determinante da matriz (quadrada) A;  eigen(A) calcula os valores e vetores próprios da matriz (quadrada) A;  kronecker(A1,A2) calcula o produto de Kronecker (A1⊗A2)  sum(diag(A)) calcula o traço da matriz A MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  39. 39. 39 4. Objetos (List)  Listas (List) são estruturas genéricas e flexíveis que permitem armazenar diversos formatos num unico objeto. > lis1 <- list(A = 1:15, B = “ISTO É UMA MENSAGEM", C = matrix(1:9,nrow = 3,byrow=T)) > lis1 $A [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $B [1] “ISTO É UMA MENSAGEM" $C [,1] [,2] [,3] [1,] 1 2 3 [2,] 4 5 6 [3,] 7 8 9 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  40. 40. 40 4. Objetos (Data frame)  Uma data frame é semelhante a uma matriz, mas na qual as colunas podem ser de tipos diferentes. > serras <- data.frame(nome=serras.nome, altitude=serras.altitude) > resultados <- data.frame(na=c(12345:12350), + turma=c(1,1,2,2,3,3),nota=c(10.1,8.2,12.5, 13.1,9.7,7.3))  As data frame são casos especiais de listas onde as componentes têm o mesmo número de elementos.  Uma data frame pode ser considerada como uma tabela de uma base de dados: cada coluna corresponde aos atributos (campos) e cada linha corresponde a um registo da tabela. MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  41. 41. 41 4. Objetos (Data frame)  Os elementos de uma data frame podem ser referidos (como numa matriz) indicando a linha e a coluna: > serras[4,1] > serras[,2]  Pode também ser usada a notação nomeDataFrame$nomeComponente (como numa lista): > serras$nome > serras[[1]] MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  42. 42. 42 4. Objetos (Data frame – função attach)  As consultas a data frames podem ser simplificadas utilizando a função attach()  A função attach() permite aceder directamente às colunas de uma data frame, sem termos de indicar o nome dessa data frame. > turma Error: object "turma" not found > attach(resultados) > turma [1] 1 1 2 2 3 3 > detach(resultados) > turma Error: object "turma" not found MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  43. 43. 5. Funcionalidades (Algumas funções usadas sobre vetores numéricos)  length(x) - número de elementos do vetor x;  sum(x) - soma dos elementos do vetor x;  prod(x)- produto dos elementos do vetor x;  cumsum(x)- vetor cujos elementos são a soma acumulada dos elementos do vetor x;  cumprod(x)- vetor cujos elementos são o produto acumulado dos elementos do vetor x;  sort(x)- vetor com os elementos do vetor x ordenados por ordem crescente. 43 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  44. 44. Operadores 44 Operador Descrição + - * / ^ = != < > <= >= & | ! Adição Subtracção Multiplicação Divisão Potenciação Igual Diferente Menor que Maior que Menor ou igual a Maior ou igual a E lógico OU lógico Não lógico Tabela 1. Operadores MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  45. 45. Algumas funções matemáticas 45 Função Descrição log(x) log10(x) exp(x) sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) sqrt(x) min( ) max( ) abs(x) Logaritmo (base e) Logaritmo (base 10) Exponencial Seno Coseno Tangente Arco seno Arco coseno Arco tangente Raiz quadrada Mínimo Máximo Valor absoluto de x Tabela 2. Funções matemáticas MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  46. 46. Funções Estatísticas 46 Função Descrição mean(x) sd(x) var(x) median(x) quantile(x,p) cor(x,y) range(x) length(x) Média Desvio padrão Variância Mediana Quantil p Correlação amostral entre X e Y Equivalente a c(min(x),max(x)) Número elementos do vector x Tabela 3. Funções estatísticas MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  47. 47. Distribuições de Probabilidade 47 Distribuição Descrição rnorm(n,mean,sd) runif(x,min,max) rt(x,df) rf(x) rexp(x) rchisq(x,df) rbinom(x,n,p) rgeom(x,p) rpois(x,lambda) rhyper(x,m,n,k) Normal Uniforme t de Student F Exponencial Qui-Quadrado Binomial Geométrica Poisson Hipergeométrica Tabela 4. Distribuições de Probabilidade MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  48. 48. 5. Funcionalidades (o R funcionando como calculadora) 48 A partir da linha de comando do R podemos somar … > 3+2 [1] 5 ... subtrair, > 18-2 [1] 16 … multiplicar, > 5*4 [1] 20 ... dividir, > 37/3 [1] 12.33333 ou realizar cálculos um pouco mais complexos como se fosse uma calculadora científica > sin(2*pi/3) [1] 0.8660254 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  49. 49. 5. Funcionalidades 49 Mas podem ocorrer erros quando o R não entende o que foi digitado, por exemplo: > 5,1*3 # O R usa o “.” e não “,” Error: syntax error > coss(2.3) Error: could not find function "coss“ Cálculos repetitivos podem tornar-se automáticos no R: > x<-12 > x [1] 12 > for (i in 1:4) {x+2->x} > x [1] 20 Uma sequência de numeros 1 a 8 pode ser obtida fazendo > 1:8 [1] 1 2 3 4 5 6 7 8 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  50. 50. 5. Funcionalidades 50 Podemos designar x como a sequência 1 a 8 > x<-1:8 > x [1] 1 2 3 4 5 6 7 8 e utilizar a sequência x > x+2 [1] 3 4 5 6 7 8 9 10 Também é possível duas sequências > y<-6:13 > y [1] 6 7 8 9 10 11 12 13 > x+y [1] 7 9 11 13 15 17 19 21 ou multiplicá-las. > x [1] 1 2 3 4 5 6 7 8 > y [1] 6 7 8 9 10 11 12 13 > x*y [1] 6 14 24 36 50 66 84 104 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  51. 51. 51 Podemos efetuar outro tipo de algumas operações matemáticas simples utilizando o R. Vejamos mais alguns exemplos: 20^2 + 21^2 + . . . + 30^2 Para obter a resposta devemos: 1) criar uma sequência de números de 20 a 30 2) elevar ao quadrado cada valor deste vetor 3) somar os elementos do vetor E estes passos correspondem aos seguintes comandos > (20:30) [1] 20 21 22 23 24 25 26 27 28 29 30 > (10:20)^2 [1] [1] 400 441 484 529 576 625 676 729 784 841 900 > sum((20:30)^2) [1] 6985 5. Funcionalidades MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  52. 52. 52  De notar que apenas precisamos do último comando para obter a resposta, no entanto é importante entender a sequência dos comandos, especialmente quando estamos em fase de aprendizagem! (b) log(1) + log(10) + log(100) + . . . + log(10000000000) onde log representa o logaritmo neperiano.  Resolvendo agora com apenas um comando: > sum(sqrt(log(10^(0:10)))) [1] 34.09397 5. Funcionalidades MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  53. 53. 53 5. Funcionalidades (Gráficos de funções) Vejamos o seguinte exemplo: (b) 𝑓 𝑥 = 1 − 1 𝑥 cos 𝑥 , 𝑝𝑎𝑟𝑎 0 ≤ 𝑥 ≤ 100 > x <- seq(0, 100, l = 101) > fx <- 1 - (1/x) * cos(x) > plot(x, fx, type = "l") 0 20 40 60 80 100 0.60.81.01.2 x fx MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  54. 54. 54 6. Manipulação de Dados Podemos dar entrada dos dados no R de diferentes formas, consoante a dimensão do conjunto de dados e/ou da existência dos mesmos numa base já criada.  Inserção de dados diretamente no R (através da criação de vetores) Podemos dar entrada com dados definindo vetores com o comando c() ou usando outras funções que criam vetores. > x1<-c(12,13,14,12,11,10,9,15) > x1 [1] 12 13 14 12 11 10 9 15 > x2 <- (1:5) * 100 > x2 [1] 100 200 300 400 500 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  55. 55. 55  Usando a função scan() Esta função permite a leitura dos dados diretamente a partir do ambiente R, ou seja, coloca o R em modo prompt onde o utilizador deve digitar cada valor seguido da tecla <ENTER>. Para terminar a entrada de dados basta digitar <ENTER> duas vezes consecutivas. Vejamos o exemplo: > x<-scan() 1: 2 2: 3 Para corrigir e/ou alterando dados 3: 2 Ex: substituir 6 por 2 4: 5 5: 6 > x[5]=2 6: 3 > x 7: 4 [1] 2 3 2 5 2 3 4 1 2 3 8: 1 9: 2 10: 3 11: Read 10 items > x [1] 2 3 2 5 6 3 4 1 2 3 6. Manipulação de Dados MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  56. 56. 56  Usando a função edit() O comando edit(data.frame()) abre uma folha para a digitação dos dados que são armazenados como data frames. 6. Manipulação de Dados MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  57. 57. 57  Lendo os dados a partir de um ficheiro de texto  A forma mais simples de fazer isso é usar dados em formato texto (arquivo do tipo ASCII).  Por exemplo, se os dados estão disponíveis numa folha de cálculo, como EXCEL ou equivalente, podemos sempre na escolher a opção <SALVAR COMO> e gravar os dados num ficheiro formato de texto.  No R, usamos a função scan(), ou então a função read.table()para ler os dados de um ficheiro de texto e armazenar no formato de uma data frame. Exemplo 1 Como primeiro exemplo consideremos a importação para o R dos dados deste ficheiro texto. Clicando no link podemos visualizar o ficheiro. De seguida copiamos o ficheiro para a área de trabalho (working directory do R). Para importar este ficheiro usamos: >exemplo1 <- read.table(“exemplo1.txt") >exemplo1 6. Manipulação de Dados MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  58. 58. 58  Lendo os dados a partir de um ficheiro de texto Exemplo 2 Consideremos agora a importação para o R dos dados deste ficheiro de texto. Clicando novamente no link podemos visualizar o ficheiro de dados. De seguida copiamos o ficheiro para a área de trabalho (working directory do R). ficheiro texto De notar que este ficheiro é diferente do anterior na medida em que os nomes das variáveis estão indicados na primeira linha. Para que o R considere corretamente essa informação devemos adicionar o argumento header=T. Neste caso usamos então: > exemplo2 <- read.table("exemplo2.txt", header=T) > exemplo2 6. Manipulação de Dados MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  59. 59. 59 Exemplo 3 1º) Importar para o R os dados deste ficheiro texto. 2º) Clicar no link para visualizar o ficheiro. 3º) Copiar o ficheiro para área de trabalho (working directory do R). Diferenças relativamente aos arquivos anteriores: i) nomes das variáveis estão na primeira linha ii) os campos agora são separados por : iii) os carateres decimais estão separados por vírgula (,) mas o R usa o ponto (.) iv) para importar corretamente os dados devemos agora usar os argumentos sep e dec: > exemplo3 <- read.table("dados.csv", head=T, sep=":", dec=",") > exemplo3 6. Manipulação de Dados MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014
  60. 60. 60 MINICURSO - CIAEEAR MANAUS (AM), 12-15 AGOSTO 2014 The Future of Statistics by Bradley Efron AMSTAT News, September 2007 “My own life as a consulting biostatistician has been revolutionized in the space of a single career. Sitting in front of a powerful terminal and calling up R functions to all the dozen advances and a lot more really does put seven-league boots an a statistician’s feet. Maybe 77-league boots lie in our immediate future.. . . ”

×