반응형
02-02. 합계 (sum)
DataFrame.sum(axis=None, skipna=None, level=None, numeric_only=None, min_count=0, kwargs)
개요
sum 메서드는 객체의 행이나 열의 총 합계를 구하는 메서드 입니다.
사용법
기본 사용법
df.sum(axis=None, skipna=None, level=None, numeric_only=None, min_count=0, kwargs)
axis : { 0 : 행 / 1 : 열} 더할 레이블을 선택합니다.
skipna : {True or False} Na가 존재할 경우 무시할지의 여부입니다. 기본값은 True입니다.
level : Multi Index일 경우 레벨을 설정합니다.
numeric_only : 숫자 데이터만 사용할지의 여부 입니다.
min_count : 계산에 필요한 숫자의 최소 갯수입니다.
반응형
예시
먼저, NaN이 포함된 3x3 객체를 하나 생성하겠습니다.
col = ['col1','col2','col3']
row = ['row1','row2','row3']
data = [[1,2,3],[4,5,6],[7,np.NaN,9]]
df = pd.DataFrame(data=data,index=row,columns=col)
print(df)
>>
col1 col2 col3
row1 1 2.0 3
row2 4 5.0 6
row3 7 NaN 9
axis를 설정하여 더하기 수행
0은 열의 요소들의 합, 1은 행의 요소들의 합 입니다.
print(df.sum(axis=0))
>>
col1 12.0
col2 7.0
col3 18.0
dtype: float64
print(df.sum(axis=1))
>>
row1 6.0
row2 15.0
row3 16.0
dtype: float64
skipna를 변경하여 계산하기
위 계산에서는 NaN을 무시하고 계산한 것을 알 수 있습니다.
skipna=False일 경우 NaN이 포함되는경우에는 NaN을 반환합니다.
print(df.sum(axis=0,skipna=False))
>>
col1 12.0
col2 NaN
col3 18.0
dtype: float64
min_count를 변경하여 계산하기
min_count는 계산에 필요한 숫자의 최소 갯수를 의미합니다.
즉, min_count=3이라면 NaN을 포함하는 행의 경우 숫자가 2개이기 때문에
skipna=True임에도 NaN을 출력하게 됩니다.
print(df.sum(axis=1,min_count=3))
>>
row1 6.0
row2 15.0
row3 NaN
dtype: float64
반응형
'파이썬완전정복-Pandas DataFrame > 02. 객체내 연산' 카테고리의 다른 글
Pandas DataFrame 02-06. 순위 (rank) (0) | 2022.01.09 |
---|---|
Pandas DataFrame 02-05. 전치 (transpose, T) (0) | 2022.01.09 |
Pandas DataFrame 02-04. 절대값 (abs) (0) | 2022.01.09 |
Pandas DataFrame 02-03. 곱 (prod, product) (0) | 2022.01.09 |
Pandas DataFrame 02-01. 반올림 (round) (0) | 2022.01.09 |