import numpy as np
c = np.bincount([6,1,1,2,3,4,4,6]) # bincount를 생성
print(c)
x = np.arange(len(c)) # c의 길이만큼 배열생성
print(x)
a = np.repeat(x, repeats = c) # a를 repeat를 이용해 x를 c와 같아지도록 반복
print(a)
[0 2 1 1 2 0 2]
[0 1 2 3 4 5 6]
[1 1 2 3 4 4 6 6]
repeat를 이용할 때 반복횟수(p)에 repeat를 적용할 배열(x)와 broadcasting이 가능한 배열을 넣어주면 배열(x)의 인덱스에 있는 숫자가 배열(p)의 인덱스에 있는 숫자만큼 반복하게된다.
print(np.repeat(x, repeats=3))
p1 = [1,1,1,1,1,1,1]
p2 = [2,2,2,2,2,2,2]
print(np.repeat(x, repeats=p1))
print(np.repeat(x, repeats=p2))
[0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6]
[0 1 2 3 4 5 6]
[0 0 1 1 2 2 3 3 4 4 5 5 6 6]
'Python' 카테고리의 다른 글
파이썬 - enumerate (0) | 2022.05.15 |
---|---|
파이썬 - 넘파이 브로드캐스팅 (0) | 2022.05.11 |
파이썬 - 농담게임 (0) | 2022.05.06 |
파이썬 - 숫자 맞추기 게임 (0) | 2022.05.04 |
Python 파이썬 map()함수, filter()함수 비교 (0) | 2022.04.02 |
댓글