Как использовать функцию colSums() в R


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

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

colSums(x, na.rm=FALSE)

куда:

  • x : Имя матрицы или фрейма данных.
  • na.rm : игнорировать ли значения NA. По умолчанию ЛОЖЬ.

В следующих примерах показано, как использовать эту функцию на практике.

Пример 1: Использование colSums() с фреймом данных

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

#create data frame
df <- data.frame(var1=c(1, 3, 3, 4, 5),
 var2=c(7, 2, 5, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, 14, 9))

#view data frame
df

 var1 var2 var3 var4
1 1 7 3 1
2 3 2 3 1
3 3 5 6 2
4 4 3 6 14
5 5 2 8 9

#find sum of each column
colSums(df)

var1 var2 var3 var4 
 16 19 26 27

Вот как интерпретировать вывод:

  • Сумма значений в столбце 'var1' равна 16 .
  • Сумма значений в столбце 'var2' равна 19 .
  • Сумма значений в столбце 'var3' равна 26 .
  • Сумма значений в столбце 'var4' равна 27 .

Пример 2: Использование colSums() со значениями NA во фрейме данных

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

#create data frame with some NA values
df <- data.frame(var1=c(1, 3, 3, 4, 5),
 var2=c(7, NA, NA, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, NA, 9))

#view data frame
df

 var1 var2 var3 var4
1 1 7 3 1
2 3 NA 3 1
3 3 NA 6 2
4 4 3 6 NA
5 5 2 8 9

#find sum of each column
colSums(df, na. rm = TRUE )

var1 var2 var3 var4 
 16 12 26 13 

Пример 3: Использование colSums() с определенными столбцами

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

#create data frame with some NA values
df <- data.frame(var1=c(1, 3, 3, 4, 5),
 var2=c(7, NA, NA, 3, 2),
 var3=c(3, 3, 6, 6, 8),
 var4=c(1, 1, 2, NA, 9))

#view data frame
df

 var1 var2 var3 var4
1 1 7 3 1
2 3 NA 3 1
3 3 NA 6 2
4 4 3 6 NA
5 5 2 8 9

#find sum of columns 1, 3, and 4
colSums(df[, c(1, 3, 4)], na. rm = TRUE )

var1 var3 var4 
 16 26 13

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

Как суммировать определенные столбцы в R (с примерами)
Как суммировать определенные строки в R (с примерами)