4.2 Ordenando dados
A função arrange do pacote dplyr é usada para ordenar as linhas de um data frame com base em uma ou mais colunas. O comando arrange permite que você organize seus dados de forma crescente ou decrescente, facilitando a análise e visualização dos dados.
Digamos que queremos ordenar nossa base de dados a partir da variável idade. Teremos o código abaixo:
X | status | tempo_empresa | moradia | tempo_emprestimo | idade | estado_civil | registros | trabalho | despesas | renda | ativos | dividas | valor_emprestimo | preco_do_bem | dif | autonomos | idadeQ |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
384 | ruim | 1 | pais | 48 | 18 | solteira(o) | não | meio período | 35 | 81 | 0 | 0 | 1150 | 1314 | 164 | não | Jovem adultos |
1238 | bom | 1 | própria | 48 | 18 | solteira(o) | não | meio período | 45 | 111 | 7000 | 0 | 1100 | 1299 | 199 | não | Jovem adultos |
1622 | ruim | 0 | alugada | 36 | 18 | solteira(o) | não | meio período | 40 | 51 | 0 | 0 | 500 | 500 | 0 | não | Jovem adultos |
3712 | ruim | 1 | pais | 48 | 18 | solteira(o) | não | meio período | 45 | 95 | 4000 | 0 | 600 | 1472 | 872 | não | Jovem adultos |
3913 | ruim | 0 | alugada | 36 | 18 | solteira(o) | sim | outros | 38 | 33 | 0 | 0 | 300 | 350 | 50 | não | Jovem adultos |
Repare que os dados foram ordenados de acordo com a coluna idade, de baixo para cima. O comando desc, nos permite fazer o mesmo, em ordem decrescente:
X | status | tempo_empresa | moradia | tempo_emprestimo | idade | estado_civil | registros | trabalho | despesas | renda | ativos | dividas | valor_emprestimo | preco_do_bem | dif | autonomos | idadeQ |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
16 | bom | 0 | própria | 24 | 68 | casada(o) | não | fixo | 75 | 131 | 4162 | 0 | 900 | 1186 | 286 | não | Idosos |
18 | bom | 33 | alugada | 24 | 68 | casada(o) | não | autônomo | 65 | 200 | 5000 | 2000 | 600 | 1350 | 750 | sim | Idosos |
119 | bom | 20 | própria | 24 | 66 | casada(o) | não | fixo | 45 | 143 | 10000 | 0 | 950 | 1370 | 420 | não | Idosos |
298 | bom | 3 | própria | 18 | 66 | casada(o) | não | outros | 45 | 69 | 12000 | 0 | 500 | 1101 | 601 | não | Idosos |
1932 | bom | 2 | alugada | 12 | 66 | casada(o) | não | outros | 51 | 60 | 20000 | 0 | 500 | 1504 | 1004 | não | Idosos |
Digamos que queremos ordenar a análise que fizemos na seção anterior, sobre a média de idade e estado civil. Basta adicionar o comando arrange com o operador pipe %>%. Os resultados ordem a coluna média por ordem crescente de valores.
## # A tibble: 6 × 2
## estado_civil media
## <chr> <dbl>
## 1 solteira(o) 27.8
## 2 <NA> 37
## 3 separada(o) 38.0
## 4 divorciada(o) 38.7
## 5 casada(o) 39.6
## 6 viúva(o) 48.8
Podemos, também, ordenar os resultados por ordem alfabética, inserindo a variável estado_civil no comando arrange.
dados %>%
group_by(estado_civil) %>%
summarize(media=mean(idade, na.rm = T))%>%
arrange(estado_civil)
## # A tibble: 6 × 2
## estado_civil media
## <chr> <dbl>
## 1 casada(o) 39.6
## 2 divorciada(o) 38.7
## 3 separada(o) 38.0
## 4 solteira(o) 27.8
## 5 viúva(o) 48.8
## 6 <NA> 37