안녕하세요.
오늘은 파이썬으로 count 함수를 활용하는 다양한 방법들에 대해 알아보겠습니다.
파이썬 count 함수 활용법 - 예시 중심
▣ 파이썬 count()
파이썬의 내장 함수로, 문자열에서 주어진 요소의 총개수를 반환함
: 예시 데이터 df
import pandas as pd
import numpy as np
df = pd.DataFrame({
"name": ["Alice", "Bob", "Charlie", "David", "Eve"],
"age": [25, 30, 35, 40, 45],
"gender": ["F", "M", "M", np.nan, "F"],
"score": [80, 85, 90, 95, np.nan]
})
1) 행/열의 개수 세기 (결측치 제외)
- 데이터프레임에서 count 함수 호출 시, 결측치를 제외한 값이 세어짐
- 데이터프레임뿐만 아니라 컬럼(Ex.series)에 대해서도 count 함수 활용 가능
df. count()
name 5 age 5
gender 4 score 4
dtype: int64
# df['age].count() 사용 가능
- 데이터의 개수를 알 수 있는 방법 중 count가 아닌 size를 활용하는 경우가 있는데, size는 결측치를 포함한 개수를 알 수 있기에 해당 데이터의 크기를 가늠할 때 주로 사용됨
df.size
20 # 열 4 X 행 5 = 20
2) 특정 값이나 조건에 해당하는 값의 개수 세기
- 데이터의 개수를 셀 때, 가장 많은 유형으로 시험이나 업무에서 유용하게 사용할 수 있음
- 데이터프레임의 특정 컬럼에서는 value_counts()를 사용하면 됨
- count()는 데이터프레임 및 시리즈 형태 모두에 적용 가능하나, value_counts()는 시리즈 형태만 적용 가능함
df.value_counts(subset = None, # 기준 열, list 형태도 가능
normalize = False, # 개수가 아닌 비율로 출력
sort = True, # 빈도 순서로 정렬 여부
ascending = False, # 오름차순 정렬
dropna = True # 결측치 제외 여부
)
- 예를 들어, score 컬럼에서 90점 이상인 값의 개수를 세고 싶다면, 다음과 같이 할 수 있음
df["score"][df["score"] >= 90].value_counts()
95.0 1
90.0 1
Name: score, dtype: int64
3) 그룹별 개수 세기
- 그룹별로 데이터를 세고 싶다면, groupby와 count를 함께 사용하면 됨
- 여러 개의 열을 기준으로 그룹화해야 한다면, groupby 함수에 리스트 형태로 열을 넣어주면 됨
# 'gender' 열을 기준으로 그룹화하고 각 그룹의 빈도(count) 계산
grouped_counts = df.groupby('gender').size().reset_index(name='Counts')
# 결과 출력
print(grouped_counts)
구분 | gender | Counts |
0 | F | 2 |
1 | M | 2 |
파이썬 데이터프레임에서 count 함수를 활용한 여러 가지 방법들에 대해 예시 위주로 설명해 드렸습니다. 빅데이터분석기사 실기 시험이나 실무에서 자주 활용될 수 있으므로, 참고하시기 바랍니다.
'Programming > Python' 카테고리의 다른 글
[Python] 구글 바드 API 사용법 (3) | 2024.01.30 |
---|---|
[Python] 날짜 비교 및 차이 구하기 (8) | 2024.01.29 |
[Python] 텔레그램 API 발급 및 파이썬 환경 구축 (4) | 2024.01.22 |
[Python] fileinput 파일 수정하기 (0) | 2024.01.21 |
[Python] 상관분석 (산점도, 상관계수, 검정) (1) | 2024.01.05 |
댓글