Как добавить итоговую строку в фрейм данных в r


Вы можете использовать следующие методы, чтобы добавить строку «итого» в нижнюю часть фрейма данных в R:

Метод 1: используйте базу R

 rbind(df, data. frame (team=' Total ', t(colSums(df[, -1]))))

Способ 2: используйте dplyr

 library (dplyr)

df %>%
  bind_rows(summarize(., across(where(is.numeric), sum),
                         across(where(is.character), ~' Total ')))

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

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F'),
                 assists=c(5, 7, 7, 9, 12, 9),
                 rebounds=c(11, 8, 10, 6, 6, 5),
                 blocks=c(6, 6, 3, 2, 7, 9))

#view data frame
df

  team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9

Пример 1. Добавьте итоговую строку, используя основание R.

Мы можем использовать функции rbind и colSums базы R, чтобы добавить итоговую строку внизу фрейма данных:

 #add total row to data frame
df_new <- rbind(df, data. frame (team=' Total ', t(colSums(df[, -1]))))

#view new data frame
df_new

   team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9
7 Total 49 46 33

Обратите внимание, что внизу фрейма данных была добавлена строка, отображающая сумму значений в каждом столбце.

Пример 2. Добавьте итоговую строку с помощью dplyr

Следующий код показывает, как использовать функции пакета dplyr в R для добавления итоговой строки в нижнюю часть фрейма данных:

 library (dplyr)

#add total row to data frame
df_new <- df %>%
            bind_rows(summarize(., across(where(is.numeric), sum),
                                   across(where(is.character), ~' Total ')))

#view new data frame
df_new

   team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9
7 Total 49 46 33

Обратите внимание, что внизу фрейма данных была добавлена строка, отображающая сумму значений в каждом столбце.

Также обратите внимание, что этот метод дает те же результаты, что и базовый метод R.

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

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

Как использовать rbind в R
Как удалить строки в R
Как вычислить разницу между строками в R

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

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