[python] 파이썬 통계 - 빈도표(Frequency Table)

 파이썬에서 Counter 클래스를 활용하여, 숫자 리스트로부터 빈도표를 출력하는 프로그램을 작성해 봅니다. 아래는 샘플 코드입니다.


'''
숫자 리스트에 대한 빈도표 출력
'''

from collections import Counter

def frequency_table(numbers):
    table = Counter(numbers)

    print('Order by frequency')
    print('Number\tFrequency')
    for number in table.most_common():
        print('{0}\t{1}'.format(number[0], number[1]))

    print()
    print('Order by number')
    print('Number\tFrequency')
    table2 = table.most_common()
    table2.sort()
    for number in table2:
        print('{0}\t{1}'.format(number[0], number[1]))

if __name__ == '__main__':
    scores = [7,8,9,2,10,9,9,9,9,4,5,6,1,5,6,7,8,6,1,10]
    frequency_table(scores)


빈도수 기준 내림차순으로 먼저 출력한 뒤, 숫자 기준 오름차순으로 출력해 보았습니다. 아래는 실행결과입니다.


Order by frequency
Number  Frequency
9       5
6       3
7       2
8       2
10      2
5       2
1       2
2       1
4       1

Order by number
Number  Frequency
1       2
2       1
4       1
5       2
6       3
7       2
8       2
9       5
10      2


끝.

댓글

이 블로그의 인기 게시물

[PLC] PLC 아날로그 입출력 기본

전력(kW) 계산하기 (직류, 교류 단상, 교류 삼상)

NPN, PNP 트랜지스터 차이점

3선 결선식 센서의 타입 PNP, NPN

제너 다이오드에 저항을 연결하는 이유

[아두이노] 가변저항(Potential Divider)과 전압분배(Voltage Divider)

커패시터에 저장된 에너지 계산

3상 모터 전력에서 전류 계산하기 (How to Convert Three-Phase Power to Amps)

[공압밸브] 5포트 2웨이 & 4포트 2웨이, 단동 VS 복동 차이점

SSR과 기계식 릴레이 차이점