Як додати певні рядки в pandas (з прикладами)


Ви можете використовувати такі методи, щоб знайти суму певних рядків у pandas DataFrame:

Спосіб 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 () 

Наступні приклади показують, як використовувати кожен метод на практиці з такими pandas DataFrame:

 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:

Як запустити функцію SUMIF у Pandas
Як виконати суму GroupBy у Pandas
Як підсумувати стовпці на основі умови в Pandas

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *