Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬 Pandas value_counts()로 값 이름과 개수 추출하는 방법

Pandas의 value_counts() 메서드를 사용하면 DataFrame 특정 열에 포함된 고유한 값의 이름과 각 값이 등장한 횟수(개수)를 손쉽게 확인할 수 있습니다. 이 글에서는 예제를 통해 값 이름과 개수를 추출하는 방법을 단계별로 살펴보겠습니다.

1. 예제용 DataFrame 생성

먼저 4개의 열을 가진 DataFrame을 생성합니다.

dataFrame = pd.DataFrame({
   "Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],
   "Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],
   "Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],
   "Units Sold": [200, 120, 150, 120, 210, 250, 220]
})

2. 특정 열에서 값 이름과 개수 추출하기

Car 열의 값 이름과 개수를 가져오려면 다음과 같이 작성합니다.

res = dataFrame['Car'].value_counts()

마찬가지로 Units Sold 열의 값 이름과 개수도 동일한 방식으로 구할 수 있습니다.

res = dataFrame['Units Sold'].value_counts()

전체 예제 코드

다음은 지금까지의 내용을 모두 포함한 완성된 코드입니다.

import pandas as pd

# DataFrame 생성
dataFrame = pd.DataFrame({
   "Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],
   "Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],
   "Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],
   "Units Sold": [200, 120, 150, 120, 210, 250, 220]
})

print("DataFrame ...\n", dataFrame)

# Car 열의 값 이름과 개수 출력
res = dataFrame['Car'].value_counts()
print("\nCar 열의 값 이름과 개수:\n", res)

# Units Sold 열의 값 이름과 개수 출력
res = dataFrame['Units Sold'].value_counts()
print("\nUnits Sold 열의 값 이름과 개수:\n", res)

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

DataFrame ...
        Car  Cubic Capacity  Reg Price  Units Sold
0      BMW            2000       7000         200
1  Mustang            1800       1500         120
2    Tesla            1500       5000         150
3  Mustang            2500       8000         120
4 Mercedes            2200       9000         210
5    Tesla            3000       6000         250
6     Audi            2000       1500         220

Car 열의 값 이름과 개수:
Mustang     2
Tesla       2
Audi        1
BMW         1
Mercedes    1
Name: Car, dtype: int64

Units Sold 열의 값 이름과 개수:
120    2
150    1
220    1
210    1
250    1
200    1
Name: Units Sold, dtype: int64

정리

value_counts()는 Series 객체에 적용되며, 기본적으로 개수가 많은 순서대로 내림차순 정렬하여 결과를 반환합니다. 위 예제에서 볼 수 있듯이 Car 열에서는 Mustang과 Tesla가 각각 2번 등장했고, 나머지 차량은 1번씩 등장했습니다. 이처럼 value_counts()는 범주형 데이터의 분포를 빠르게 파악할 때 매우 유용하게 활용됩니다.