본문 바로가기
python

Python Pandas DataFrame.value_counts()(DataFrame 값 개수 세기)

by WeRun 2022. 8. 11.

Pandas에서 value_counts() 함수를 사용하는 것은 Series와 DataFrame에서 모두 사용이 가능합니다.

Series에서 value_counts()를 사용하는 방법은 아래 링크에서 확인해주세요~

2022.08.07 - [python] - Python Pandas Series.value_counts()(Series 행/열 개수 세기)

 

Python Pandas Series.value_counts()(Series 개수 세기)

Pandas에는 Series와 DataFrame이 있는데요. value_counts()함수는 Series, DataFrame에서 모두 사용할 수 있는 함수로 각각 사용방법이 다릅니다. 이번 포스팅에는 Series의 valure_counts()에 대해서 이야기하겠..

werun.tistory.com

 

pandas.DataFrame.value_counts

DataFrame.value_counts(subset=None, normalize=False, sort=True, ascending=False, dropna=True)

 

Parameter

subset: list-like, optional, Column을 list로 만들어서 특정 Column으로 결합된 값을 count 할 수 있습니다

normalize: True or False, True 시 값들의 빈도 수를 비율로 나타냅니다.

sort: 행을 빈도수에 맞춰 정렬합니다.

ascending: 결과값을 오름차순으로 정렬할 지 결정합니다.

dropna: NaN(Null) 값을 표현 할 지 여부를 결정합니다.

 

아래와 같이 성씨가 나열되어 있는 데이터를 사용해 보겠습니다.

df.value_counts()를 사용하면 DataFrame 내 각각의 값들의 숫자를 세주는 것이 아닌 행 전체를 하나의 값으로 비교해서 결과를 보여줍니다.

1) subset

전체 Column중에 특정 Column들로 조합된 값들에 대한 Count를 세고 싶다면 subset에 원하는 Column을 list 형식으로 만들어서 넣어주면 원하는 결과를 확인 할 수 있습니다.

2) nomalize

True로 설정하는 경우 값들의 빈도수를 비율로 나타냅니다.

3) sort

행을 빈도수에 맞춰 정렬 하는 파라미터 입니다.

4) ascending

결과값을 오름차순으로 정렬할 지 결정합니다.

5) dropna

NaN(Null) 값을 표현할 지 결정합니다.

이 경우 전체 NaN이 있는 행의 데이를 전부 표현해주는 것이아니라 아래와 같이 카테고리 구조로 표현한 것을 볼 수 있습니다. 

포스팅은 여기까지 입니다.

DataFrame에서 전체 값 하나하나의 개수가 궁금하다면 

아래 링크에서 확인하시고 더 좋은 방법이 있다면 댓글달아주세요

2022.08.04 - [python] - Python DataFrame 전체 값 개수 세고 나열하기(value_counts()/concat()/fillna()/sum()/sort_values())

 

Python DataFrame 전체 값 개수 세고 나열하기(value_counts()/concat()/fillna()/sum()/sort_values())

Excel 데이터 취합을 하다보면 카테고리별 잘 나눠진 데이터가 아닌 분류없이 무작위로 써진 데이터를 볼수있는데요. 간단하게 예를들면 제조현장에서는 일별 고장난 설비명을 순서없이 쭉 나열

werun.tistory.com