개발/파이썬

파이썬. DataFrame Categorical Data

웅'jk 2022. 11. 25. 10:12

DataFrame 의 데이터가 특정값이 반복될 때 데이터를 그룹지어

분석 할 수 있다.

 

다음과 같은 데이터 프레임 df가 있습니다.

 

지금은 8개의 데이터밖에 없으나 만약 수십만개 이상이라고 가정해봅시다.

Year의 데이터의 값이 같은게 여러개 있을 수 있고, 또는 한개 일 수도 있습니다.

데이터의 종류는 몇가지인지 궁금할때 우리는 중복을 없애는 함수 unique를 배웠습니다.

df['Year'].unique()

이렇게 3가지 종류로 있는 걸 알 수있습니다.

갯수를 알고 싶다면  nunique() 을 이용하면 갯수로 알려줍니다.

 

그러면 이번에는 특정 조건을 만족하는 데이터를 묶어서 처리하는 

groupby() 함수를 알아봅시다.

 

year 값이 같은 데이터들의 연봉합을 알고 싶습니다.

df.groupby('Year')['Salary'].sum()

groupby('Year') 로 그룹별로 묶였습니다. 연봉값은 salary 이기에 우리가 구하려는

연봉에 엑세스하여 합계를 구하는 함수 sum()으로 출력해주시면 됩니다.

 

이번에는 년도별그룹으로 연봉의 총합, 평균, 표준쳔차를 보여주세요 

 

df.groupby('Year')['Salary'].agg([np.sum,np.mean,np.std])

sum() 따로 mean() 따로 하지 않고 

agg함수를 통해 쉽게 나타낼 수 있다.

다만 np.sum , np.mean인 이유는 이 함수들이 numpy라이브러리에 함수이기 때문이다.