Как использовать функцию 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 A 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 A 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 A 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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.