• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

aggfunc='count'

22.01.18 14:28 작성 조회수 505

1

선생님 강의 잘 듣고 거의 마무리해가고 있습니다! 감사합니다
한가지 궁금한점이 aggfunc='count'의 기능이 가끔 헷갈려서 질문 드립니다
 
 
pd.pivot_table(df, index='시도', values='공원면적', aggfunc='count')라고 작성한 후에 나오는 결과값은 단순하게 공원 면적의 개수를 세어주는 건가요? 아니면 공원 면적의 종류의 개수를 세어주는 건가요?
 
가령 A시에 a, a, a, b, c로 공원 면적이 우연히 3개가 같다고 할때
aggfunc='count'는 5를 출력한다고 보면 되나요?
자꾸 머릿속으로 한국말로 '시도별 공원 면적의 개수'라고 생각하니까 a, b, c, 종류가 3개이므로 시도별 공원면적의 개수는 3이라고생각하게 되는데 전자가 맞는거죠?!

답변 1

답변을 작성해보세요.

0

안녕하세요.

답변이 늦어졌습니다.  

pd.pivot_table(df, index='시도', values='공원면적', aggfunc='count')

질문해 주신 내용에서는 시도별 공원의 수를 카운트 했습니다. 만약 aggfunc 에 mean 등이 들어갔다면 공원면적의 평균, sum  이 들어간다면 공원면적의 합계가 될거에요.

그런데 count 를 쓰게 되면 빈도수만을 구하기 때문에 질문해 주신것처럼 공원면적 컬럼으로 빈도수를 구하게 됩니다. 시도별 행의 수를 구하게 되는데 values  를 지정해 주지 않으면 모든 컬럼에 대해 빈도수를 구하게 되고 컬럼마다 빈도수가 같게 나오게 되어 임의로 컬럼하나를 지정해 주었는데 여기에서는 공원면적을 사용하였습니다.

그래서 질문주신 내용은 공원면적의 빈도수라고 볼 수도 있지만 index 에 "시도"를 지정하여 시도별 빈도수로 봐주시면 됩니다.

남은 수업 끝까지 완주하시길 바랄게요!

즐거운 주말 되세요!