O dplyr é um pacote que se tornou essencial para a manipulação de dados de maneira fácil e rápida, pois une simplicidade e eficiência. Por alguns o dplyr é considerado como uma revolução no R. Além disso, ao utilizar linguagem C e C++ por trás da maioria das funções, ele torna o código mais rápido computacionalmente.
Neste post, serão apresentadas as cinco principais funções do pacote dplyr:
- arrange
- filter
- select
- mutate
- summarise
2. Instalando o Pacote
O dplyr é instalado da mesma maneira que outros pacotes no R.
install.packages("dplyr") #Instalando
library(dplyr) #Carregando
2. Estrutura
A estrutura das funções apresentadas é padronizada.
filter(tbl, cor == "blue")
- A função a ser utilizada é apresentada fora dos parênteses (filter).
- O primeiro argumento é o banco de dados (tbl).
- No próximo argumento, é apresentado “o que se quer fazer” com o banco de dados (cor == “blue”).
É importante frisar que a utilização das funções citadas pode ser facilitada com o uso do operador %>% (pipe). Por exemplo:
tbl %>%
arrange(valor) %>%
filter(cor == "red")
Com a utilização do operador %>% não é necessário repetir o banco de dados no argumento de cada função utilizada.
3. As Principais Funções
Como dito anteriormente, serão analisadas as cinco funções principais do dplyr.
3.1 Arrange
A função arrange ordena as linhas do banco de dados de forma que os valores de determinada variável fiquem em ordem crescente ou decrescente.
Exemplo 1:
## cor valor
## blue 5
## black 4
## blue 3 (Banco de Dados “tbl”)
## blue 2
## black 1
arrange(tbl, valor)
## cor valor
## black 1
## blue 2
## blue 3
## black 4
## blue 5
Ao aplicar a função arrange, as linhas foram ordenadas de maneira que as observações da coluna “valor” apareçam de forma crescente.
Além disso, os valores também podem se ordenar de forma decrescente ao utilizar “desc”.
tbl %>% arrange(desc(valor))
3.2. Filter
Resumidamente, a função filter filtra linhas de acordo com o critério escolhido.
Exemplo 1:
## cor valor
## blue 5
## black 4
## blue 3 (Banco de Dados “tbl”)
## blue 2
## black 1
black = filter(tbl,cor==”black”)
## cor valor
## black 4 (Banco de Dados “black”)
## black 1
O banco de dados “black” foi criado a partir do banco “tbl” e só tem as linhas que, na coluna “cor”, assumem “black” na observação.
Exemplo 2:
filter(tbl,valor>3)
## cor valor
## blue 5
## black 4
Exemplo 3: Também é possível aplicar os dois exemplos acima juntos.
filter(tbl, valor>3 & cor=="black")
## cor valor
## black 4
3.3 Select
Com a função select é possível selecionar colunas de um banco de dados qualquer, de acordo com um critério.
Exemplo 1: Selecionar uma coluna do banco de dados.
select(tbl, cor)
## cor
## blue
## black
## blue
## blue
## black
Exemplo 2: Selecionar mais de uma coluna do banco de dados.
banco %>%
select(idade, altura, peso)
Neste caso, a função seleciona e apresenta somente as colunas “idade”, “altura” e “peso” do banco de dados “banco”.
3.4 Mutate
A função mutate é utilizada para adicionar uma nova coluna/variável em um determinado banco de dados.
Exemplo:
mutate(tbl, dobro = 2*valor, metade = valor/2)
## cor valor dobro metade
## blue 5 10 2.5
## black 4 8 2
## blue 3 6 1.5
## blue 2 4 1
## black 1 1 0.5
3.5 Summarise
A função summarise é utilizada para reduzir variáveis a valores. Logo, retorna um vetor de tamanho 1, a partir de uma conta com as variáveis.
Além disso, geralmente é utilizado em conjunto com group_by.
Exemplo 1: Soma dos valores da coluna “valor”.
summarise(tbl, soma = sum(valor))
## soma
## 15
Exemplo 2: Calculando mínimo, máximo e média da coluna “valor”.
summarise(tbl,
minimo= min(valor),
media = mean(valor),
maximo = max(valor))
## minimo media maximo
## 1 3 5
Exemplo 3: summarise em conjunto com group_by.
cor <- group_by(tbl, cor) #"Agrupa" por cor
summarise(cor, soma = sum(valor)) #Soma separadamente o valor de cada cor
## cor soma
## blue 8
## black 7