파이썬(Python)/문법

[Python] 리스트에서 가장 많이 나온 값 찾는 scipy의 mode (반복 횟수)

끄적끄적아무거나 2022. 1. 5. 18:52
반응형

 

목차

     

     

     

     

     

     

     

    [Python] Scipy.stats mode함수

     

    파이썬의 라이브러리 중에 Scipy는 수학적 계산을 돕는 라이브러리 입니다. Scipy 내에 통계 관련 stats이 있고 stats에서 mode라는 함수가 있습니다. mode 함수는 입력 값으로 받은 list 값 중에 가장 많이 반복되어 나온 값을 출력하고 몇번 반복되었는지를 알려 줍니다. 

     

    사용법은 아래와 같습니다.

     

    stats.mode(리스트 입력값)

     

    출력 값은 ModeResult 클래스로 나오므로 배열을 사용해서 원하는 값을 불러 올 수 있습니다.

     

    아래 예제를 통해 쉽게 이해하실 수 있습니다. 

     

     

     

     

    [Python] 리스트에서 가장 많이 나온 값 찾기

     

    예제 코드>>

    import random
    from scipy import stats
    
    a_list = []
    for _ in range(20):
        a_list.append(random.randrange(1,20))
    
    mode_list = stats.mode(a_list)
    
    print("a_list : ", a_list)
    print("mode_list : ", mode_list)
    print(mode_list[0][0])
    print(mode_list[1][0])

    2번 라인 : scipy 라이브러리를 불러 옵니다.

    4~6번 라인 : a_list에 랜덤한 값으로 채웁니다.

    8번 라인 : mode를 실행합니다.

    10번 라인 : 랜덤으로 만들어진 리스트 값을 불러 옵니다.

    11번 라인 : mode에 의한 출력 값을 불러 옵니다.

    12번 라인 : mode 출력 값 중에 가장 많이 나온 값을 불러 옵니다.

    13번 라인 : 가장 많이 나온 값이 반복된 횟수를 불러 옵니다.

     

    출력>>

    a_list :  [11, 10, 13, 4, 4, 14, 10, 8, 18, 19, 8, 18, 13, 7, 19, 12, 11, 13, 13, 14]
    mode_list :  ModeResult(mode=array([13]), count=array([4]))
    13
    4

    a_list에서 13이라는 숫자가 총 4번 나왔고 리스트의 다른 값 중에 제일 많이 나왔다.

    반응형