Como reorganizar colunas em r
Muitas vezes você pode querer reorganizar as colunas em um quadro de dados em R.
Felizmente, isso é fácil de fazer usando a função select() do pacote dplyr .
library (dplyr)
Este tutorial mostra vários exemplos de como usar esta função na prática usando o seguinte data frame:
#create data frame df <- data.frame(player = c('a', 'b', 'c', 'd', 'e'), position = c('G', 'F', 'F', 'G', 'G'), points = c(12, 15, 19, 22, 32), rebounds = c(5, 7, 7, 12, 11)) #view data frame df player position points rebounds 1 to G 12 5 2 b F 15 7 3 c F 19 7 4 d G 22 12 5th G 32 11
Exemplo 1: Mover uma coluna para a primeira posição
O código a seguir mostra como mover uma coluna específica em um quadro de dados para a primeira posição:
#move column 'points' to first position df %>% select(points, everything() ) points player position rebounds 1 12 a G 5 2 15 b F 7 3 19 c F 7 4 22 d G 12 5 32nd G 11
Este código diz ao dplyr para selecionar a coluna de pontos primeiro e depois incluir todas as outras colunas após os pontos.
Exemplo 2: Mover uma coluna para a última posição
O código a seguir mostra como mover uma coluna específica em um quadro de dados para a última posição:
#move column 'points' to last position
df %>% select(-points, points)
player position rebounds points
1 to G 5 12
2 b F 7 15
3c F 7 19
4 d G 12 22
5th G 11 32
Este código diz ao dplyr para selecionar todas as colunas, exceto a coluna de pontos, e então selecionar a coluna de pontos novamente. Isto tem o efeito de mover a coluna de pontos para a última posição no quadro de dados.
Exemplo 3: reorganizar várias colunas
O código a seguir mostra como reorganizar várias colunas de uma vez em uma ordem específica:
#change all column names to uppercase
df %>% select(rebounds, position, points, player)
rebounds position points player
1 5 G 12 a
2 7 F 15 b
3 7 F 19 c
4 12 G 22 d
5 11 G 32 e
Exemplo 4: Reorganizar colunas em ordem alfabética
O código a seguir mostra como classificar as colunas em ordem alfabética:
#order columns alphabetically
df %>% select(order(colnames(.)))
player points position rebounds
1 to 12 G 5
2 b 15 F 7
3 c 19 F 7
4 d 22 G 12
5 th 32 G 11
Exemplo 5: ordem inversa das colunas
O código a seguir mostra como inverter a ordem das colunas em um quadro de dados:
#reverse column order df %>% select(rebounds:player, everything() ) rebound points position player 1 5 12 G a 2 7 15 F b 3 7 19 F c 4 12 22 L d 5 11 32 G e
Nota : Você pode encontrar a documentação completa da função select() aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns no dplyr:
Como selecionar colunas por índice usando dplyr
Como selecionar colunas por nome usando dplyr
Como adicionar colunas ao quadro de dados usando dplyr