본문 바로가기

Language/Python

Numpy_Broadcasting, masking

- Broadcasting

: shape이 다른 array끼리 연산

## 브로드캐스팅
matrix = np.array([[2,4,2],[6,5,9],[9,4,7]])
matrix2 = np.array([1,2,3])
print(matrix+matrix2)

array1 = np.arange(3).reshape((3,1))
array2 = np.arange(3)
print(array1+array2)

처음 예제

: 3x3  + 1x3 배열연산은 1x3행렬의 1행을 2,3행에도 복사되서 연산이 이루어진다.

1x3 과 3x1의 연산도 3x3으로 복사되서 된다.

브로드캐스팅 조건으로 연산을 위해 행이나 열의 크기의 최소공배수가 두 배열중 한 배열의 크기와 같아야한다.

 

 


- Masking

 

비교연산자나 조건문으로 각 원소의 참, 거짓을 판단해서 배열로 반환해준다.

# 집계 & 마스킹연산
x = np.arange(5)

print(x < 3) # [True, True, True, False, False]

print(x[x<3]) # [0,1,2]

 

'Language > Python' 카테고리의 다른 글

Pandas 심화  (0) 2023.02.26
Pandas_Operations&function, Sort  (0) 2023.02.26
Pandas_Series, DataFrame  (0) 2023.02.24
Numpy_Indexing, Slicing, Operator  (1) 2023.02.23
Numpy_Create Array  (0) 2023.02.23