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


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

Способ 1: добавить определенные строки по индексу

 #sum rows in index positions 0, 1, and 4
df. iloc [[0, 1, 4]]. sum ()

Способ 2. Добавьте определенные строки по метке

 #sum rows with index labels 'A', 'B', and 'E'
df. loc [['A', 'B', 'E']]. sum () 

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [28, 17, 19, 14, 23, 26, 5],
                   ' rebounds ': [5, 6, 4, 7, 14, 12, 9],
                   ' assists ': [10, 13, 7, 8, 4, 5, 8]})

#set indexes
df = df. set_index ([pd. Index (['A', 'B', 'C', 'D', 'E', 'F', 'G'])])

#view DataFrame
print (df)

   points rebound assists
A 28 5 10
B 17 6 13
C 19 4 7
D 14 7 8
E 23 14 4
F 26 12 5
G 5 9 8

Пример 1: Сумма определенных строк по индексу

Следующий код показывает, как добавить значения строк со значениями индекса 0, 1 и 4 для каждого столбца в DataFrame:

 #sum rows in index positions 0, 1, and 4
df. iloc [[0, 1, 4]]. sum ()

points 68
rebounds 25
assists 27
dtype: int64

По результату мы видим:

  • Сумма строк со значениями индекса 0, 1 и 4 для столбца точек равна 68 .
  • Сумма строк со значениями индекса 0, 1 и 4 для столбца отказов равна 25 .
  • Сумма строк со значениями индекса 0, 1 и 4 для столбца передач равна 27 .

Также обратите внимание, что вы можете суммировать определенный диапазон строк, используя следующий синтаксис:

 #sum rows in index positions between 0 and 4
df. iloc [0:4]. sum ()

points 78
rebounds 22
assists 38
dtype: int64

Из вывода мы можем увидеть сумму строк со значениями индекса от 0 до 4 (не считая 4) для каждого столбца в DataFrame.

Пример 2. Добавление определенных строк по метке

Следующий код показывает, как суммировать значения строк с индексными метками «A», «B» и «E» для каждого столбца в DataFrame:

 #sum rows with index labels 'A', 'B', and 'E'
df. loc [['A', 'B', 'E']]. sum ()

points 68
rebounds 25
assists 27
dtype: int64

По результату мы видим:

  • Сумма строк со значениями индекса «A», «B» и «E» для столбца точек равна 68 .
  • Сумма строк со значениями индекса «A», «B» и «E» для столбца отказов равна 25 .
  • Сумма строк со значениями индексов «A», «B» и «E» для столбца передач равна 27 .

Связанный: Разница между loc и iloc в Pandas

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

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

Как запустить функцию СУММЕСЛИ в Pandas
Как выполнить сумму GroupBy в Pandas
Как суммировать столбцы на основе условия в Pandas

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

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