728x90
반응형
(문제)
정수로 이루어진 배열에서 최빈값(가장 자주 나오는 값)을 구하는 코드를 작성하세요.
모든 최빈값을 출력할 필요는 없으며, 최빈값 중 하나만 출력해도 됩니다.
(반드시 NumPy 패키지를 활용하세요)
예)
입력: x = np.array([1,2,3,3,4,5])
출력: 3
입력: x = np.array([0,1,1,1,2,3,3,4,4,4,5])
출력: 1
(방법)
- 반드시 numpy로 사용하라는 것과 예제의 결과를 보면 np.bincount() 함수를 사용하는 것이 맞는 것 같습니다.
- 하지만 bincount() 는 0~10까지만 Count 가능하기 때문에 그 이상의 수에는 최빈값을 찾을 수 없습니다.
import numpy as np
# x = np.array([1,2,3,3,4,5])
x = np.array([0,1,1,1,2,3,3,4,4,4,5,10])
cnt = np.bincount(x) # 0~10까지의 수를 Count하여 리스트의 인덱스 0,1,2,..10 위치에 Count 값 표시
print(x[np.argmax(cnt)]) # argmax하면 리스트의 요소값이 가장 큰 값의 인덱스값을 리턴
결과
1728x90
반응형
'프로그램' 카테고리의 다른 글
| [파이썬] 문제 : 닥스훈트,사모예드,멀티즈 분류(k-NN) (1) | 2022.12.06 |
|---|---|
| [파이썬] 문제 : bubble 정렬 코드 설명 (0) | 2022.12.06 |
| [파이썬] 문제 : 50미만 임의의 정수 100개 배열에서 3의 나머지가 1인 수 출력 (0) | 2022.12.06 |
| [파이썬] 문제 : 통행료 계산(오토바이,승용차,트럭) (0) | 2022.12.06 |
| [파이썬] 문제 : n을 입력 받아 2~9사이의 값 확인하고 구구단 출력 (0) | 2022.12.05 |
댓글