Pandas DataFrame의 열 평균을 얻는 방법
Ahmed Waheed
2023년1월30일
큰 데이터 세트로 작업 할 때 때로는 평균 또는 평균 열을 가져와야하는 경우가 있습니다. 예를 들어, 학생들의 채점 목록이 있고 평균 또는 다른 열의 평균을 알고 자합니다. 이 작업을 수행하는 다른 방법은 다음과 같습니다.
다음 섹션에서 같은DataFrame
을 다음과 같이 사용할 것입니다.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
아래는DataFrame
의 예입니다.
name percentage grade
0 Oliver 90 88
1 Harry 99 76
2 George 50 95
3 Noah 65 79
Pandas DataFrame 열의 평균을 계산하는 df.mean()
메서드
우리의 데이터 셋에 존재하는 성적 열의 평균을 보자.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
mean_df = df["grade"].mean()
print(mean_df)
다음이 출력됩니다.
84.5
또 다른 예를 들어 전체 DataFrame에 df.mean()
함수를 적용 해 봅시다.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
mean_df = df.mean()
print(mean_df)
위 예제에서mean()
메소드에 열 이름을 지정하지 않았습니다. mean()
메소드는 mean
함수를 적용 할 수있는 열을 자동으로 결정합니다.
다음이 출력됩니다.
percentage 76.0
grade 84.5
dtype: float64
df.describe()
메소드
이 방법은 데이터 세트의 전체 통계 출력을 생성합니다. 어떻게 사용하는지 봅시다.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
print(df.describe())
출력:
percentage grade
count 4.000000 4.000000
mean 76.000000 84.500000
std 22.524061 8.660254
min 50.000000 76.000000
25% 61.250000 78.250000
50% 77.500000 83.500000
75% 92.250000 89.750000
max 99.000000 95.000000
df.describle()
메소드의 결과는DataFrame
이므로 열 이름과 행 이름을 참조하여percentage
와grade
의 평균을 얻을 수 있습니다.
df.describe()["grade"]["mean"]
df.describe()["percentage"]["mean"]
df.describe()
는 특정 열에 대해서도 작동합니다. grade
열에이 함수를 적용 해 봅시다.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
print(df["grade"].describe())
다음이 출력됩니다.
count 4.000000
mean 84.500000
std 8.660254
min 76.000000
25% 78.250000
50% 83.500000
75% 89.750000
max 95.000000
Name: grade, dtype: float64
열이 지정되면 결과는 Series
입니다. 평균을 직접 참조하여 평균값을 얻을 수 있습니다.
df["grade"].describe()["mean"]