[1] 12
Cap. 04 - Introdução ao R
5 de maio de 2023
Objetivos
Difusão e capacitação no uso da linguagem R e sua aplicação em abordagem quantitativas e estatísticas
Conformidade com o Art. 2º da Portaria UNESP 69/2022 (Ligas acadêmicas)
Aprimorar a formação técnico-científica e humanística dos graduandos e pós-graduandos
Fomentar um espaço de convivência e aprendizado entre os membros da comunidade unespiana
Funcionamento: Estatuto e Plano Acadêmico
8 horas/mês com presença mínima de 75% (sujeito à sanções, exceto em casos de falta justificada e aprovada pelo comitê)
Comitê gestor democraticamente eleito por Assembleia Geral e sujeito à avaliações periódicas
É um dever dos associados a conduta ética e pró-ativa, que preserve a respeitabilidade da liga e promova seus objetivos
Vamos concentrar a comunicação pelo Discord
Todo o material está e estará disponível no GitHub
15 capítulos: linguagem R, tidyverse, perguntas em ecologia, análises univariadas, multivariadas e geoespaciais
Estamos num espaço seguro e amigável
Sintam-se à vontade para me interromper e tirar dúvidas
O R é uma linguagem de programação livre (open source), direcionada à manipulação, análise e visualização de dados, com diversas expansões (pacotes) para dados ou análises específicas
John M. Chambers (Stanford University, CA, EUA)
Versões
IDE (Integrated Development Environment)

Robert Gentleman e Ross Ihaka (Auckland University, NZ)
Versões
IDE (Integrated Development Environment)

Manipulação, visualização e análise de dados
R Markdown e quarto

Ambiente de Desenvolvimento Integrado (Integrated Development Environment)
Ambiente de Desenvolvimento Integrado (Integrated Development Environment)

O console é onde a linguagem R instalada é carregada para executar os códigos
Na janela do console aparece o símbolo >, seguido de uma barra vertical | que fica piscando (cursor), onde digitamos ou enviamos nossos códigos do script
Vamos digitar 10 + 2 e apertar a tecla Enter para que essa operação seja executada
O resultado retorna o valor 12, precedido do valor 1 entre colchetes [1]
Os colchetes [] demonstram a posição do elemento numa sequência de valores
Vamos criar uma sequência usando o operador : para demonstrar isso
O número que aparecer nos colchetes vai depender da largura das janelas
Noções de programação
Número inteiro (integer)
Texto entre aspas simples ('') ou duplas ("") (character ou string)
Onde os códigos são escritos e salvos no formato .R
ctrl + shift + N
Os códigos devem ser digitados preferencialmente no script
Para executar um código, deixem o cursor em qualquer lugar da linha
Atalho: ctrl + enter
Salvar um script
ctrl + S
Comentários (#)
Comentários não são lidos pelo R e descrevem informações em nosso script
São representados pelo # (hash) ou #' (hash-linha)
Comentários (#)
Sempre comece um script com um cabeçalho
Ajuda a lembrar o que o script faz e quando foi escrito
Operadores aritméticos (retorna números)
| Operador | Descrição | Uso |
|---|---|---|
| + | Adição | a + b |
| – | Subtração | a - b |
| * | Multiplicação | a * b |
| / | Divisão | a / b |
| %% | Resto da divisão | a %% b |
| %/% | Quociente da divisão | a %/% b |
| ^ | Potenciação | a^b |
Operadores relacionais (retorna TRUE|FALSE)
| Operador | Descrição | Uso |
|---|---|---|
| < | Menor | a < b |
| > | Maior | a > b |
| <= | Menor ou igual | a <= b |
| >= | Maior ou igual | a > = b |
| == | Igual | a == b |
| != | Não igual (diferente) | a!=b |
Ordem das operações aritméticas
() > ^ > * ou / > + ou -
Palavras que atribuímos (guardamos) dados possibilitando sua manipulação
Atribuição (<-)
palavra <- dados
Atalho: alt + -

Vamos atribuir o valor 10 à palavra eco
Sempre confira a atribuição
Dica: chame o objeto novamente
Seja criativo
O R sobrescreve os valores dos objetos com o mesmo nome
Seja criativo, mas nem tanto…
O R tem limitações ao nomear objetos!
Começar por letras (a-z ou A-Z) ou pontos (.)
Conter letras (a-z ou A-Z), números (0-9), underscores (_) ou pontos (.)
Case-sensitive, i.e., ele difere letras maiúsculas de minúsculas
Evitar utilizar letras maiúsculas, acentos ou cedilha (ç)
Não podem ser iguais a nomes especiais: break, else, FALSE, for, function, if, Inf, NA, NaN, next, repeat, return, TRUE, while
Ambiente (Environment)
Os objetos podem ser visualizados no painel Environment
Podemos utilizar objetos para fazer operações
Podemos utilizar objetos para atribuir resultados de operações
Tipos de objetos
Códigos que realizam operações em argumentos
nome_da_funcao(argumento1, argumento2)

Exemplos
Argumentos
Os argumentos podem ser de dois tipos:
Objetos ou valores: dados onde a função irá atuar
Parâmetros: mudam o comportamento da função (texto = TRUE, FALSE ou "texto")
Argumentos como valores
Argumentos como parâmetros
Atribuição de resultados a objetos
[1] 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
Atribuição, função e linha temporal
Criar dois objetos
Somar esses objetos e atribuição
Raiz quadrada e atribuição
Atribuição, função e linha temporal
Atribuição de dados a objetos
Funções que operam e mudam esses dados
Nova atribuição desses resultados a novos objetos
Descreve as informações de uma função

Description: descrição da função
Usage: uso da função e argumentos
Arguments: argumentos e suas especificações
Details: detalhes da função
Value: interpretar a saída (output)
Note: notas sobre a função
Authors: autores da função
References: referências bibliográficas da função
See also: funções relacionadas
Examples: exemplos do uso da função
Conjunto de funções extras para executar tarefas específicas
Duas fontes
Instalação de pacotes
install.packages("pacote")Instalar o pacote vegan
Verificar pacotes instalados
Carregamento de pacotes
library(pacote) ou require(pacote)Carregar o pacote vegan
Verificar pacotes carregados
Help me help you: um bestiário para entender erros e pedir ajuda no R
1. Esquecer de completar um código (+)
Parênteses
Aspas
2. Esquecer da vírgula
3. Chamar um objeto errado
4. Esquecer de carregar um pacote
4. Esquecer de carregar um pacote
# carregar o pacote
library(vegan)
## carregar dados
data(dune)
## funcao do pacote vegan
decostand(dune, "hell") Achimill Agrostol Airaprae Alopgeni Anthodor Bellpere Bromhord
1 0.2357023 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
2 0.2672612 0.0000000 0.0000000 0.2182179 0.0000000 0.2672612 0.3086067
3 0.0000000 0.3162278 0.0000000 0.4183300 0.0000000 0.2236068 0.0000000
4 0.0000000 0.4216370 0.0000000 0.2108185 0.0000000 0.2108185 0.2581989
5 0.2156655 0.0000000 0.0000000 0.0000000 0.3049971 0.2156655 0.2156655
6 0.2041241 0.0000000 0.0000000 0.0000000 0.2500000 0.0000000 0.0000000
7 0.2236068 0.0000000 0.0000000 0.0000000 0.2236068 0.0000000 0.2236068
8 0.0000000 0.3162278 0.0000000 0.3535534 0.0000000 0.0000000 0.0000000
9 0.0000000 0.2672612 0.0000000 0.2672612 0.0000000 0.0000000 0.0000000
10 0.3049971 0.0000000 0.0000000 0.0000000 0.3049971 0.2156655 0.3049971
11 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
12 0.0000000 0.3380617 0.0000000 0.4780914 0.0000000 0.0000000 0.0000000
13 0.0000000 0.3892495 0.0000000 0.3892495 0.0000000 0.0000000 0.0000000
14 0.0000000 0.4082483 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
15 0.0000000 0.4170288 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
16 0.0000000 0.4605662 0.0000000 0.3481553 0.0000000 0.0000000 0.0000000
17 0.3651484 0.0000000 0.3651484 0.0000000 0.5163978 0.0000000 0.0000000
18 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2721655 0.0000000
19 0.0000000 0.0000000 0.3110855 0.0000000 0.3592106 0.0000000 0.0000000
20 0.0000000 0.4016097 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
Chenalbu Cirsarve Comapalu Eleopalu Elymrepe Empenigr Hyporadi
1 0.0000000 0.0000000 0.0000000 0.0000000 0.4714045 0.0000000 0.0000000
2 0.0000000 0.0000000 0.0000000 0.0000000 0.3086067 0.0000000 0.0000000
3 0.0000000 0.0000000 0.0000000 0.0000000 0.3162278 0.0000000 0.0000000
4 0.0000000 0.2108185 0.0000000 0.0000000 0.2981424 0.0000000 0.0000000
5 0.0000000 0.0000000 0.0000000 0.0000000 0.3049971 0.0000000 0.0000000
6 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
7 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
8 0.0000000 0.0000000 0.0000000 0.3162278 0.0000000 0.0000000 0.0000000
9 0.0000000 0.0000000 0.0000000 0.0000000 0.3779645 0.0000000 0.0000000
10 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
11 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2500000
12 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
13 0.1740777 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
14 0.0000000 0.0000000 0.2886751 0.4082483 0.0000000 0.0000000 0.0000000
15 0.0000000 0.0000000 0.2948839 0.4662524 0.0000000 0.0000000 0.0000000
16 0.0000000 0.0000000 0.0000000 0.4923660 0.0000000 0.0000000 0.0000000
17 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.3651484
18 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2540003 0.4016097
20 0.0000000 0.0000000 0.0000000 0.3592106 0.0000000 0.0000000 0.0000000
Juncarti Juncbufo Lolipere Planlanc Poaprat Poatriv Ranuflam
1 0.0000000 0.0000000 0.6236096 0.0000000 0.4714045 0.3333333 0.0000000
2 0.0000000 0.0000000 0.3450328 0.0000000 0.3086067 0.4082483 0.0000000
3 0.0000000 0.0000000 0.3872983 0.0000000 0.3535534 0.3872983 0.0000000
4 0.0000000 0.0000000 0.3333333 0.0000000 0.2981424 0.3333333 0.0000000
5 0.0000000 0.0000000 0.2156655 0.3409972 0.2156655 0.3735437 0.0000000
6 0.0000000 0.0000000 0.3535534 0.3227486 0.2500000 0.2886751 0.0000000
7 0.0000000 0.2236068 0.3872983 0.3535534 0.3162278 0.3535534 0.0000000
8 0.3162278 0.0000000 0.3162278 0.0000000 0.3162278 0.3162278 0.2236068
9 0.3086067 0.3086067 0.2182179 0.0000000 0.3086067 0.3450328 0.0000000
10 0.0000000 0.0000000 0.3735437 0.2641353 0.3049971 0.3049971 0.0000000
11 0.0000000 0.0000000 0.4677072 0.3061862 0.3535534 0.0000000 0.0000000
12 0.0000000 0.3380617 0.0000000 0.0000000 0.0000000 0.3380617 0.0000000
13 0.0000000 0.3015113 0.0000000 0.0000000 0.2461830 0.5222330 0.2461830
14 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2886751
15 0.3611576 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.2948839
16 0.3015113 0.0000000 0.0000000 0.0000000 0.0000000 0.2461830 0.2461830
17 0.0000000 0.0000000 0.0000000 0.3651484 0.2581989 0.0000000 0.0000000
18 0.0000000 0.0000000 0.2721655 0.3333333 0.3333333 0.0000000 0.0000000
19 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
20 0.3592106 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.3592106
Rumeacet Sagiproc Salirepe Scorautu Trifprat Trifrepe Vicilath
1 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
2 0.0000000 0.0000000 0.0000000 0.3450328 0.0000000 0.3450328 0.0000000
3 0.0000000 0.0000000 0.0000000 0.2236068 0.0000000 0.2236068 0.0000000
4 0.0000000 0.3333333 0.0000000 0.2108185 0.0000000 0.1490712 0.0000000
5 0.3409972 0.0000000 0.0000000 0.2641353 0.2156655 0.2156655 0.0000000
6 0.3535534 0.0000000 0.0000000 0.2500000 0.3227486 0.3227486 0.0000000
7 0.2738613 0.0000000 0.0000000 0.2738613 0.2236068 0.2236068 0.0000000
8 0.0000000 0.2236068 0.0000000 0.2738613 0.0000000 0.2236068 0.0000000
9 0.2182179 0.2182179 0.0000000 0.2182179 0.0000000 0.2672612 0.0000000
10 0.0000000 0.0000000 0.0000000 0.2641353 0.0000000 0.3735437 0.1524986
11 0.0000000 0.2500000 0.0000000 0.3952847 0.0000000 0.3061862 0.2500000
12 0.2390457 0.3380617 0.0000000 0.2390457 0.0000000 0.2927700 0.0000000
13 0.0000000 0.2461830 0.0000000 0.2461830 0.0000000 0.2461830 0.0000000
14 0.0000000 0.0000000 0.0000000 0.2886751 0.0000000 0.5000000 0.0000000
15 0.0000000 0.0000000 0.0000000 0.2948839 0.0000000 0.2085144 0.0000000
16 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
17 0.0000000 0.0000000 0.0000000 0.3651484 0.0000000 0.0000000 0.0000000
18 0.0000000 0.0000000 0.3333333 0.4303315 0.0000000 0.2721655 0.1924501
19 0.0000000 0.3110855 0.3110855 0.4399413 0.0000000 0.2540003 0.0000000
20 0.0000000 0.0000000 0.4016097 0.2540003 0.0000000 0.0000000 0.0000000
Bracruta Callcusp
1 0.0000000 0.0000000
2 0.0000000 0.0000000
3 0.2236068 0.0000000
4 0.2108185 0.0000000
5 0.2156655 0.0000000
6 0.3535534 0.0000000
7 0.2236068 0.0000000
8 0.2236068 0.0000000
9 0.2182179 0.0000000
10 0.2156655 0.0000000
11 0.3535534 0.0000000
12 0.3380617 0.0000000
13 0.0000000 0.0000000
14 0.0000000 0.4082483
15 0.4170288 0.0000000
16 0.3481553 0.3015113
17 0.0000000 0.0000000
18 0.4714045 0.0000000
19 0.3110855 0.0000000
20 0.3592106 0.3110855
5. Usar o nome da função de forma errônea
Achimill Agrostol Airaprae Alopgeni Anthodor Bellpere Bromhord Chenalbu
16 48 5 36 21 13 15 1
Cirsarve Comapalu Eleopalu Elymrepe Empenigr Hyporadi Juncarti Juncbufo
2 4 25 26 2 9 18 13
Lolipere Planlanc Poaprat Poatriv Ranuflam Rumeacet Sagiproc Salirepe
58 26 48 63 14 18 20 11
Scorautu Trifprat Trifrepe Vicilath Bracruta Callcusp
54 9 47 4 49 10
