본문 바로가기
Programming/Python

[Python] 파이썬 count 활용 및 예시 (value_counts)

by 코딩하는 금융인 2024. 1. 28.

안녕하세요.

오늘은 파이썬으로 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) 그룹별 개수 세기

 - 그룹별로 데이터를 세고 싶다면, groupbycount를 함께 사용하면 됨

 - 여러 개의 열을 기준으로 그룹화해야 한다면, 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 함수를 활용한 여러 가지 방법들에 대해 예시 위주로 설명해 드렸습니다. 빅데이터분석기사 실기 시험이나 실무에서 자주 활용될 수 있으므로, 참고하시기 바랍니다.

 

 

 

 

반응형

댓글