Pandas에서 value_counts() 함수를 사용하면 특정 열에 포함된 고유한 값과 그 개수를 손쉽게 확인할 수 있습니다. 이 글에서는 DataFrame을 만든 후, 특정 열의 값 이름과 등장 횟수를 추출하는 방법을 단계별로 살펴보겠습니다.
1. 샘플 DataFrame 생성
먼저 4개의 열을 가진 예제 DataFrame을 만들어 보겠습니다. 자동차 정보를 담은 데이터로 구성했습니다.
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]
})
2. 특정 열의 값 이름과 개수 추출하기
Car 열의 값 이름과 개수를 추출하려면 다음과 같이 작성합니다.
res = dataFrame['Car'].value_counts()
마찬가지로 Units Sold 열에도 동일한 방식을 적용할 수 있습니다.
res = dataFrame['Units Sold'].value_counts()
3. 전체 예제 코드
아래는 위 내용을 모두 포함한 완성된 코드입니다.
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)
4. 실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.
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번씩 등장했습니다. 범주형 데이터의 분포를 빠르게 파악해야 할 때 매우 유용한 함수이므로, 데이터 분석 시 빈도 분석 작업에 적극 활용해 보시기 바랍니다.