Как использовать функцию relocate() в dplyr (с примерами)
Вы можете использовать функцию relocate() из пакета dplyr в R для изменения положения столбцов во фрейме данных.
Для изменения положения столбцов можно использовать следующие методы:
Способ 1. Переместить столбец вперед.
#move 'x' column to front
df %>% relocate(x)
Способ 2: переместить несколько столбцов вперед
#move 'x' and 'y' columns to front
df %>% relocate(x, y)
Способ 3. Переместите столбец на позицию после другого столбца.
#move 'x' column to position after 'y' column df %>% relocate(x, . after =y)
Способ 4. Переместите столбец на позицию перед другим столбцом.
#move 'x' column to position before 'y' column df %>% relocate(x, . before =y)
В следующих примерах показано, как использовать каждый метод со следующим фреймом данных:
#create dataset df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C'), points=c(1, 2, 3, 4, 5, 6, 7), assists=c(1, 5, 2, 3, 2, 2, 0), rebounds=c(6, 6, 10, 12, 8, 8, 3)) #view dataset df team points assists rebounds 1 A 1 1 6 2 A 2 5 6 3 A 3 2 10 4 B 4 3 12 5 B 5 2 8 6 C 6 2 8 7 C 7 0 3
Пример 1. Перемещение столбца вперед
Следующий код показывает, как использовать функцию relocate() для перемещения столбца вперед:
#move 'assists' column to front
df %>% relocate(assists)
assists team points rebounds
1 1 To 1 6
2 5 A 2 6
3 2 A 3 10
4 3 B 4 12
5 2 B 5 8
6 2 C 6 8
7 0 C 7 3
Пример 2. Перемещение нескольких столбцов вперед
Следующий код показывает, как использовать функцию relocate() для перемещения нескольких столбцов вперед:
#move 'points' and 'assists' to front
df %>% relocate(points, assists)
points assists team rebounds
1 1 1 A 6
2 2 5 A 6
3 3 2 A 10
4 4 3 B 12
5 5 2 B 8
6 6 2 C 8
7 7 0 C 3
Пример 3. Переместите столбец на позицию после другого столбца.
Следующий код показывает, как использовать функцию relocate() для перемещения столбца в определенную позицию за другим столбцом:
#move 'team' column to after 'assists' column df %>% relocate(team, . after =assists) points assists team rebounds 1 1 1 A 6 2 2 5 A 6 3 3 2 To 10 4 4 3 B 12 5 5 2 B 8 6 6 2 C 8 7 7 0 C 3
Пример 4. Переместите столбец на позицию перед другим столбцом.
Следующий код показывает, как использовать функцию relocate() для перемещения столбца в определенную позицию перед другим столбцом:
#move 'team' column to before 'rebounds' column df %>% relocate(team, . before =rebounds) points assists team rebounds 1 1 1 A 6 2 2 5 A 6 3 3 2 To 10 4 4 3 B 12 5 5 2 B 8 6 6 2 C 8 7 7 0 C 3
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные функции с помощью dplyr:
Как удалить строки с помощью dplyr
Как упорядочить строки с помощью dplyr
Как фильтровать по нескольким условиям с помощью dplyr