배열에 조건을 걸어보자 : 비교연산자¶
파이썬에서 비교연산자(>, < , ==, <=, >=)를 쓴다는 것은
파이썬에게 질문하는것과 같다. 예를들어 3 > 2를 실행한다면 결과로서 True 가 나오는데
파이썬에게 3 > 2 는 3은 2보다 큰가? 라고 질문하는 것이기에
맞다 아니다를 표현하는 Boolean 형식의 답이 리턴된다. 위 질문에서의 질문이 사실이기에 True가 리턴된다.
부등호를 쓸때는 순서를 주의하자 <= , >= 의 순서를 반대로(=< , =>)쓴다면 에러가 나게된다. ==는 같다의 뜻이다.
In [1]:
import numpy as np
In [2]:
X = np.arange(2,32+1,2).reshape(4,4)
In [3]:
X
Out[3]:
array([[ 2, 4, 6, 8], [10, 12, 14, 16], [18, 20, 22, 24], [26, 28, 30, 32]])
In [4]:
X > 25
Out[4]:
array([[False, False, False, False], [False, False, False, False], [False, False, False, False], [ True, True, True, True]])
In [16]:
X <= 10
Out[16]:
array([[ True, True, True, True], [ True, False, False, False], [False, False, False, False], [False, False, False, False]])
In [6]:
X == 22
Out[6]:
array([[False, False, False, False], [False, False, False, False], [False, False, True, False], [False, False, False, False]])
조건에 맞는 값만 가져와 보자¶
"가져온다"라고 하면 Data Accessing 이다. 파이썬에서 데이터 억세싱은 대괄호로 실행된다
In [8]:
X
Out[8]:
array([[ 2, 4, 6, 8], [10, 12, 14, 16], [18, 20, 22, 24], [26, 28, 30, 32]])
In [7]:
X[ X >= 22 ]
Out[7]:
array([22, 24, 26, 28, 30, 32])
여러 조건을 걸어보자! & 와 |¶
예를들어 10보다크고 20보다 작은 수를 가져오고 싶을 때
조건을 자세히 나눈다면
10보다 크고 그리고 20보다 작은 수라고 말할 수 있을것이다.
파이썬 Data Accessing에서 "그리고(and)"는 &이며 "또는(or)"은 | (키보드의 \ + Shift)이다.
In [13]:
X[ (X > 10) & (X < 20)]
Out[13]:
array([12, 14, 16, 18])
In [14]:
X[ (X < 10) | (X > 20)]
Out[14]:
array([ 2, 4, 6, 8, 22, 24, 26, 28, 30, 32])
'넘파이&판다스' 카테고리의 다른 글
[Pandas] 판다스 1차원 데이터, 시리즈를 생성해보자! pandas.Series (0) | 2021.11.21 |
---|---|
[넘파이 기초] 다차원배열의 인덱스 접근, Data accessing (0) | 2021.11.20 |
[넘파이 기초] 배열의 최대값, 최솟값, 총합, 평균, 표준편차 : max, min, sum, mean, std (0) | 2021.11.20 |
[넘파이 기초] 랜덤값을 생성하고 랜덤한 값으로 이루어진 배열을 만들어보자! random.random, randint, noraml(정규분포) (0) | 2021.11.20 |
[넘파이 기초] 몇차원 배열인지 확인해보자! numpy 배열의 ndim (0) | 2021.11.20 |