반응형
numpy에서 부울 배열을 그대로 배열로 바꾸는 방법
부울 마스크 배열과 위치 조건이 참인 배열에있는 위치의 정수 성능을 검색하는 방법 Numpy
예를 들면 :
x=np.array([range(100,1,-1)])
#generate a mask to find all values that are a power of 2
mask=x&(x-1)==0
#This will tell me those values
print x[mask]
이 경우, 나는 만약 알고 싶습니다 i
의 . 반복하지 않고 생성 할 수 있습니까?mask
mask[i]==True
다른 옵션 :
In [13]: numpy.where(mask)
Out[13]: (array([36, 68, 84, 92, 96, 98]),)
이것은 numpy.where(mask==True)
.
numpy.nonzero()
이 정보를 찾는 데 사용할 수 있습니다.
np.arange(100,1,-1)
array([100, 99, 98, 97, 96, 95, 94, 93, 92, 91, 90, 89, 88,
87, 86, 85, 84, 83, 82, 81, 80, 79, 78, 77, 76, 75,
74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, 63, 62,
61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49,
48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36,
35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23,
22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10,
9, 8, 7, 6, 5, 4, 3, 2])
x=np.arange(100,1,-1)
np.where(x&(x-1) == 0)
(array([36, 68, 84, 92, 96, 98]),)
이제 다음과 같이 바꾸십시오.
x[x&(x-1) == 0]
인덱서 방식 을 선호하는 경우 부울 목록을 numpy 배열로 변환 할 수 있습니다.
print x[nd.array(mask)]
참고 URL : https://stackoverflow.com/questions/8218032/how-to-turn-a-boolean-array-into-index-array-in-numpy
반응형
'ProgramingTip' 카테고리의 다른 글
그래프 위트 Matplotlib의 배경색 불투명도를 설정하는 방법 (0) | 2020.12.08 |
---|---|
Jenkins / Hudson- 현재 빌드 번호에 액세스하고 있습니까? (0) | 2020.12.08 |
네트워크 인터페이스와 올바른 IPv4 주소는 어떻게 얻습니까? (0) | 2020.12.08 |
목록을 varargs로 전달 (0) | 2020.12.08 |
ImageMagick을 실행하여 다중 페이지 PDF의 첫 페이지 만 JPEG로 변환하는 방법은 무엇입니까? (0) | 2020.12.08 |