1. value_counts()란 무엇인가?
value_counts()는 데이터 안에 있는 각 값이 몇 번씩 등장했는지를 세어주는 함수다.
결과는 “값 → 등장 횟수” 형태로 정리되며, 이를 통해 데이터의 분포(distribution) 를 한눈에 파악할 수 있다.
이 함수는 주로:
- 범주형 데이터
- 라벨 데이터
- 설문 응답
- 카테고리 컬럼
같은 경우에 가장 많이 사용된다.
2. value_counts()의 가장 중요한 특징
① 자동으로 빈도를 계산한다
각 값이 등장한 횟수를 자동으로 세어준다.
② 많이 나온 값부터 정렬된다
기본적으로 등장 횟수가 많은 값이 위에 표시된다.
따라서 “가장 흔한 값”을 바로 확인할 수 있다.
③ 결과는 하나의 Series다
추가적인 계산이나 시각화로 바로 이어서 사용할 수 있다.
3. 비율로 보고 싶을 때 (normalize 옵션)
단순한 개수 대신, 전체에서 차지하는 비중이 궁금할 때도 많다.
이럴 때 value_counts()는 각 값의 비율(proportion) 을 계산해주는 옵션을 제공한다.
이를 통해:
- 데이터 크기가 달라도 분포 비교가 가능하고
- 특정 값이 전체에서 얼마나 중요한지 파악할 수 있다
머신러닝에서 클래스 불균형을 확인할 때 특히 자주 사용된다.
4. 결측치(NaN)에 대한 기본 동작
value_counts()는 기본적으로 결측치를 제외하고 계산한다.
즉,
- 실제 값이 있는 데이터만을 대상으로
- 분포를 계산한다
필요에 따라 결측치까지 포함해 분포를 확인할 수도 있어 데이터 품질 점검에도 활용된다.
5. 실무에서의 대표적인 활용 사례
✔ 데이터 탐색(EDA)의 시작
데이터를 처음 열었을 때 가장 먼저 실행하는 함수 중 하나다.
✔ 범주형 변수 분석
성별, 지역, 상품 종류, 상태 코드 등 범주형 컬럼의 구조를 빠르게 파악할 수 있다.
✔ 이상치 또는 희귀 값 확인
거의 등장하지 않는 값들을 쉽게 발견할 수 있다.
✔ 라벨 분포 확인
분류 문제에서 타깃 값이 한쪽으로 치우쳐 있는지 확인할 수 있다.
6. 사용할 때 기억하면 좋은 점
- value_counts()는 컬럼(Series) 단위로 사용한다.
- 숫자형 데이터에도 사용할 수 있지만, 보통은 범주형 데이터에서 가장 큰 힘을 발휘한다.
- 결과를 기준으로 추가적인 필터링이나 시각화로 확장하기 좋다.
7. 한 문장 요약
value_counts()는 데이터 안에 어떤 값이 얼마나 들어 있는지를 가장 직관적으로 보여주는 pandas 함수다.
데이터를 이해하는 가장 빠른 길은 복잡한 계산보다 분포를 먼저 보는 것이고, 그 출발점에 항상 value_counts()가 있다.
'Python 코드' 카테고리의 다른 글
| [Python] () 와 []의 차이 (0) | 2025.12.16 |
|---|---|
| [Python] train_test_split() (0) | 2025.10.22 |
| [Python] DataFrame.fillna() (0) | 2025.10.22 |
| [Python] Keras(TensorFlow) (3) | 2025.07.17 |
| [Python] DataFrame.astype() (1) | 2025.07.14 |