데이터 분석/Python
[Pandas] DataFrame의 산술연산
eunki
2021. 4. 27. 19:09
728x90
df = pd.DataFrame({'통계': [60, 70, 80, 85, 75],
'미술': [50, 55, 80, 100, 95],
'체육': [70, 65, 50, 95, 100] })
1. Column 간 연산 (+, -, *, /, %)
2. Column과 숫자간 연산 (+, -, *, /, %)
3. 복합 연산
4. mean(), sum()을 axis 기준으로 연산
![]() |
![]() |
![]() |
![]() |
5. NaN 값이 존재하는 경우 연산
df = pd.DataFrame({'통계': [60, 70, np.nan , 85, 75],
'미술': [50, np.nan , 80, 100, 95],
'체육': [70, 65, 50, np.nan , 100] })
![]() |
![]() |
![]() |
![]() |
6. DataFrame 간 연산
df1 = pd.DataFrame({'통계': [60, 70, 80, 85, 75],
'미술': [50, 55, 80, 100, 95],
'체육': [70, 65, 50, 95, 100] })
df2 = pd.DataFrame({'통계': ['good', 'bad', 'ok' , 'good', 'ok'],
'미술': [50, 60 , 80, 100, 95],
'체육': [70, 65, 50, 70 , 100] })
문자열이 포함된 DataFrame의 연산 → 에러 발생
문자열이 포함된 DataFrame의 브로드캐스팅 연산 → 에러 발생
column의 순서가 바뀌어 있는 경우 → 같은 이름의 column끼리 자동으로 연산
df1 = pd.DataFrame({'미술': [10, 20, 30, 40, 50], '통계':[60, 70, 80, 90, 100] })
df2 = pd.DataFrame({'통계': [10, 20, 30, 40, 50], '미술': [60, 70, 80, 90, 100] })
행의 개수가 다른 경우
df1 = pd.DataFrame({'미술': [10, 20, 30, 40, 50, 60], '통계':[60, 70, 80, 90, 100, 110] })
df2 = pd.DataFrame({'통계': [10, 20, 30, 40, 50], '미술': [60, 70, 80, 90, 100] })
728x90