데이터 분석 작업을 하다 보면 특정 열의 평균값을 구하거나, 숫자 값을 포함하는 모든 열의 평균을 한 번에 계산해야 하는 경우가 종종 있습니다. 이럴 때 mean() 함수를 활용하면 간단하게 해결할 수 있습니다.
여기서 말하는 '평균(mean)'이란 데이터셋에 있는 모든 값을 더한 뒤, 값의 총 개수로 나눈 결과를 의미합니다.
그럼 실제 예제를 통해 살펴보겠습니다.
예제 코드
import pandas as pd
my_data = {'Name':pd.Series(['Tom','Jane','Vin','Eve','Will']),
'Age':pd.Series([45, 67, 89, 12, 23]),
'value':pd.Series([8.79,23.24,31.98,78.56,90.20])
}
print("The dataframe is :")
my_df = pd.DataFrame(my_data)
print(my_df)
print("The mean is :")
print(my_df.mean())실행 결과
The dataframe is : Name Age value 0 Tom 45 8.79 1 Jane 67 23.24 2 Vin 89 31.98 3 Eve 12 78.56 4 Will 23 90.20 The mean is : Age 47.200 value 46.554 dtype: float64
코드 설명
필요한 라이브러리를 임포트하고, 사용 편의성을 위해 별칭(alias)을 지정합니다.
키(key)와 값(value)으로 구성된 딕셔너리를 생성합니다. 이때 각 값은 실제로 Series(시리즈)라는 데이터 구조입니다.
생성된 딕셔너리는 pandas 라이브러리의 DataFrame() 함수에 매개변수로 전달되어 데이터프레임으로 변환됩니다.
완성된 데이터프레임이 콘솔에 출력됩니다.
이 예제의 목표는 숫자 값을 포함하는 모든 열의 평균을 계산하는 것입니다.
점(.) 연산자를 사용하여 데이터프레임 객체에서 mean() 함수를 호출합니다.
숫자형 열들의 평균값이 콘솔에 출력됩니다. 문자열로 구성된 'Name' 열은 자동으로 제외되며, 결과의 dtype은 float64로 표시됩니다.
위 실행 결과에서 확인할 수 있듯이, mean() 함수는 문자열 열을 자동으로 건너뛰고 숫자형 열('Age', 'value')만 선택하여 평균을 계산합니다. 따라서 별도의 필터링 없이도 손쉽게 수치 데이터의 통계 요약을 얻을 수 있다는 장점이 있습니다.