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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *