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


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

Метод 1: найти сумму всех столбцов

#find sum of all columns
df['sum'] = df.sum (axis= 1 )

Метод 2: найти сумму определенных столбцов

#specify the columns to sum
cols = ['col1', 'col4', 'col5']

#find sum of columns specified 
df['sum'] = df[cols]. sum (axis= 1 )

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

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [18, 22, 19, 14, 14, 11, 20, 28],
 'assists': [5, 7, 7, 9, 12, 9, 9, 4],
 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print(df)

 points assists rebounds
0 18 5 11
1 22 7 8
2 19 7 10
3 14 9 6
4 14 12 6
5 11 9 5
6 20 9 9
7 28 4 12

Пример 1: найти сумму всех столбцов

В следующем коде показано, как суммировать значения строк по всем столбцам в DataFrame:

#define new column that contains sum of all columns
df['sum_stats'] = df.sum (axis= 1 )

#view updated DataFrame
df

 points assists rebounds sum_stats
0 18 5 11 34
1 22 7 8 37
2 19 7 10 36
3 14 9 6 29
4 14 12 6 32
5 11 9 5 25
6 20 9 9 38
7 28 4 12 44

Столбец sum_stats содержит сумму значений строки по всем столбцам.

Например, вот как были рассчитаны значения:

  • Сумма строки 0: 18 + 5 + 11 = 34
  • Сумма ряда 1: 22 + 7 + 8 = 37
  • Сумма ряда 2: 19 + 7 + 10 = 36

И так далее.

Пример 2: найти сумму определенных столбцов

В следующем коде показано, как суммировать значения строк по всем столбцам в DataFrame:

#specify the columns to sum
cols = ['points', 'assists']

#define new column that contains sum of specific columns
df['sum_stats'] = df[cols]. sum (axis= 1 )

#view updated DataFrame
df

 points assists rebounds sum_stats
0 18 5 11 23
1 22 7 8 29
2 19 7 10 26
3 14 9 6 23
4 14 12 6 26
5 11 9 5 20
6 20 9 9 29
7 28 4 12 32

Столбец sum_stats содержит сумму значений строк в столбцах «очки» и «ассисты».

Например, вот как были рассчитаны значения:

  • Сумма строки 0: 18 + 5 + 11 = 23
  • Сумма ряда 1: 22 + 7 = 29
  • Сумма ряда 2: 19 + 7 = 26

И так далее.

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

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

Как выполнить функцию SUMIF в Pandas
Как выполнить GroupBy Sum в Pandas
Как суммировать столбцы на основе условия в Pandas

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