Pandas dataframe에서 행의 합계를 찾는 방법
종종 Pandas DataFrame에 있는 하나 이상의 행의 합계를 계산하는 데 관심이 있을 수 있습니다. 다행히도 pandas에서는 sum(axis=1) 함수를 사용하여 이 작업을 쉽게 수행할 수 있습니다.
이 튜토리얼에서는 다음 DataFrame에서 이 함수를 사용하는 몇 가지 예를 보여줍니다.
import pandas as pd import numpy as np #createDataFrame df = pd.DataFrame({'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [8, np.nan, 10, 6, 6, 9, 6, 10, 10, 7]}) #view DataFrame df rating points assists rebounds 0 90 25 5 8.0 1 85 20 7 NaN 2 82 14 7 10.0 3 88 16 8 6.0 4 94 27 5 6.0 5 90 20 7 9.0 6 76 12 6 6.0 7 75 15 9 10.0 8 87 14 9 10.0 9 86 19 5 7.07
예시 1: 각 행의 합계 찾기
다음 구문을 사용하여 DataFrame의 각 행의 합계를 찾을 수 있습니다.
df. sum (axis=1)
0 128.0
1,112.0
2,113.0
3 118.0
4,132.0
5,126.0
6 100.0
7 109.0
8 120.0
9 117.0
dtype:float64
출력은 다음을 알려줍니다.
- 첫 번째 행의 값의 합은 128 입니다.
- 두 번째 행의 값의 합은 112 입니다.
- 세 번째 행의 값의 합은 113 입니다.
등등.
예 2: 새 열에 행 합계 배치
다음 코드를 사용하여 DataFrame에 열을 추가하여 행 합계를 보관할 수 있습니다.
#define new DataFrame column 'row_sum' as the sum of each row df['row_sum'] = df. sum (axis=1) #view DataFrame df rating points assists rebounds row_sum 0 90 25 5 8.0 128.0 1 85 20 7 NaN 112.0 2 82 14 7 10.0 113.0 3 88 16 8 6.0 118.0 4 94 27 5 6.0 132.0 5 90 20 7 9.0 126.0 6 76 12 6 6.0 100.0 7 75 15 9 10.0 109.0 8 87 14 9 10.0 120.0 9 86 19 5 7.0 117.0
예 3: 특정 열의 짧은 목록에 대한 행 합계 찾기
다음 코드를 사용하여 특정 열의 짧은 목록에 대한 행 합계를 찾을 수 있습니다.
#define new DataFrame column as sum of points and assists columns df['sum_pa'] = df['points'] + df['assists'] #view DataFrame df rating points assists rebounds sum_pa 0 90 25 5 8.0 30 1 85 20 7 NaN 27 2 82 14 7 10.0 21 3 88 16 8 6.0 24 4 94 27 5 6.0 32 5 90 20 7 9.0 27 6 76 12 6 6.0 18 7 75 15 9 10.0 24 8 87 14 9 10.0 23 9 86 19 5 7.0 24
예 4: 특정 열의 긴 목록에 대한 행 합계 찾기
다음 코드를 사용하여 특정 열의 더 긴 목록에 대한 행 합계를 찾을 수 있습니다.
#define col_list as a list of all DataFrame column names col_list=list(df) #remove the column 'rating' from the list col_list.remove('rating') #define new DataFrame column as sum of rows in col_list df['new_sum'] = df[col_list]. sum (axis=1) #view DataFrame df rating points assists rebounds new_sum 0 90 25 5 8.0 38.0 1 85 20 7 NaN 27.0 2 82 14 7 10.0 31.0 3 88 16 8 6.0 30.0 4 94 27 5 6.0 38.0 5 90 20 7 9.0 36.0 6 76 12 6 6.0 24.0 7 75 15 9 10.0 34.0 8 87 14 9 10.0 33.0 9 86 19 5 7.0 31.0
여기에서 pandas sum() 함수에 대한 전체 문서를 찾을 수 있습니다.