판다스 행 개수 세기 질문

조회수 684회

사진과 같은 엑셀이 있을 때, 각 비고별로 이름이 몇 번 나왔는지 (예를 들면 비고 A에서 a는 2번, b는 1번) 알고 싶습니다. value_counts라는 함수가 있다는 걸 알고 있지만, 이 함수를 사용하면 순서가 바뀝니다.(자기혼자 b가 1번 a가 2번으로 순서를 섞음) 순서가 바뀌면 안되는 상황입니다. 순서가 바뀌지 않도록 각 비고별로 이름이 몇 번 나왔는지 알 수 있는 방법이 있을까요?

이미지

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    (자기혼자 b가 1번 a가 2번으로 순서를 섞음) 이게 무슨 말인지 모르겠네요.
    원하는 결과도 적어주셨으면 이해하기 쉽습니다.
    그냥 각 비고에 대해 value_counts를 적용해봤습니다.

    import pandas as pd
    df = pd.DataFrame({'col1': ['A']*3 + ['D']*2 + ['C']*2 + ['B']*3,
                       'col2': ['a', 'b', 'a', 'c', 'a', 'a', 'a', 'b', 'c', 'd']})
    print(df.groupby('col1').apply(lambda x: x['col2'].value_counts()))
    
    col1 - -
    A a 2
    b 1
    B d 1
    b 1
    c 1
    C a 2
    D a 1
    c 1
    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)