Как использовать функцию трансмутации dplyr в r (с примерами)


Вы можете использовать функцию transmute() в R, чтобы добавлять новые вычисляемые переменные в фрейм данных и удалять любые существующие переменные.

Эта функция использует следующий базовый синтаксис:

 df %>% transmute(var_new = var1 * 2)

В этом примере новая переменная с именем var_new будет создана путем умножения существующей переменной с именем var1 на 2.

В следующих примерах показано, как использовать функцию transmute() со следующим фреймом данных в R:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34),
                 rebounds=c(30, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28

Пример 1. Используйте transmute() для создания новой переменной.

Следующий код показывает, как использовать transmute() для создания новой переменной:

 library (dplyr)

#create new variable called points2
df %>% transmute(points2 = points * 2)

  points2
1,198
2,180
3,172
4,176
5,190

Значения Point2 равны исходным значениям столбца точек, умноженным на два.

Обратите внимание, что функция transmute() фактически не изменяет исходный фрейм данных.

Чтобы сохранить результаты функции transmute() в новом фрейме данных, вы должны сохранить их в переменной:

 library (dplyr)

#store results of transmute in variable
df_points2 <- df %>% transmute(points2 = points * 2)

#view results
df_points2

  points2
1,198
2,180
3,172
4,176
5,190

Результаты transmute() теперь сохраняются в новом фрейме данных.

Пример 2. Используйте transmute() для создания нескольких новых переменных.

Следующий код показывает, как использовать transmute() для создания нескольких новых переменных из существующих:

 library (dplyr)

#create multiple new variables
df %>%
 transmute(
  points2 = points * 2,
  rebounds_squared = rebounds^2,
  assists_half = assists/2,
  team_name= paste0(' team_ ', team)
)

  points2 rebounds_squared assists_half team_name
1,198,900 16.5 team_A
2 180 784 14.0 team_B
3 172 576 15.5 team_C
4 176 576 19.5 team_D
5 190 784 17.0 team_E

Обратите внимание, что были созданы четыре новые переменные.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в R:

Как использовать функцию relocate() в dplyr
Как использовать функцию среза() в dplyr
Как фильтровать по номеру строки в dplyr

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

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