Numpy 에서는 Boolean값으로 인덱싱 또한 가능하다.
기본적인Boolean 인덱싱
- 7개의 요소를 갖는 names라는 배열과, 7행 4열의 형태를 갖고 랜덤 요소를 갖는 data배열을 생성
- names배열의 요소중 icmp라는 이름을 갖고있는 인덱스에만 True값을 표시. 나머지는 False 표시.
- data[행, 열]
- data의 행 인덱스값을 names의 요소가 icmp인 인데스값으로 설정. 즉, 행인덱스는 2,5,6로 설정되는 것.
- data의 열 인덱스값을 2번째까지 출력
!= 와 ~ 를 이용한 Boolean 인덱싱
- 결과적으로 기본적인 Boolean과 비슷함.
- names배열의 요소중 tcp가 아닌것에 모두 True를 출력.
- != 와 ~연산자는 컴공이라면 알겠죠?? 설명 생략이요..
- data의 행 인덱스값으로 ~(names == 'tcp')를 설정. 즉 행인덱스는 1,2,4,5,6번째로 설정
- data의 열 인덱스값으로는 2번째 인덱스까지 출력하는 것으로 설정.
& 와 | 를 이용한 Multiple Boolean 인덱싱
&는 and 연산자이고, | 는 or 연산자임,
- mask_and는 모두 False를 출력해줌
- mask_or는 0,2,3,5,6 인덱스만 True값인 것을 확인.
- data배열에서 mask_and와 mask_or을 인덱스값으로 넣었을 때의 출력값.
'Language > Python' 카테고리의 다른 글
[Python] 일급 객체 (0) | 2022.01.09 |
---|---|
[Python] Socket:: ICMP Sniff (0) | 2022.01.08 |
[Python] Numpy:: 2차원, 다차원 배열에서의 인덱싱과 슬라이싱 (0) | 2021.11.02 |
[Python] Numpy:: 인덱싱과 슬라이싱 (0) | 2021.11.02 |
[Python] Numpy:: 스칼라연산 (0) | 2021.11.02 |