Numpy 브로드캐스트(broadcast)와 기타 활용
1. 브로드캐스트
- shape가 다른것끼리 연산을 하는것
import numpy as np
a = np.array([[1,2],
[3,4]])
b = 10
c = a*b
print(c)
[[10 20]
[30 40]]
x = np.array([[1,2],
[3,4]])
y = np.array([10, 20])
z = x*y
print(z)
[[10 40]
[30 80]]
x = np.array([[11,21],
[34,43],
[0,9]])
print(x, x.shape)
[[11 21]
[34 43]
[ 0 9]] (3, 2)
[11 21]
[34 43]
[0 9]
for row in x:
print(row)
[11 21]
[34 43]
[0 9]
2. Numpy 기타 활용
- 2차원 배열을 1차원 배열로 변환(평탄화): flatten() 이용
x = x.flatten()
print(x, x.shape)
[11 21 34 43 0 9] (6,)
print(x[np.array([1,3,5])])
[21 43 9]
# x>25 조건이 참이 원소만 가져옴
print(x[x>25])
[34 43]
# numpy 배열에 부등호 연산자를 사용한 결과는 bool 배열
print(x > 25)
[False False True True False False]
'AI&BigData > Basics' 카테고리의 다른 글
[Pandas] 함수 적용과 매핑 (0) | 2018.05.06 |
---|---|
[Pandas] Operation (0) | 2018.05.06 |
[Pandas] Index 객체, reindex (0) | 2018.05.06 |
[Pandas] DataFrame (0) | 2018.04.30 |
[Pandas] Series 객체 (0) | 2018.04.29 |
[Numpy] 자료형, type(), dtype, arange() (0) | 2018.04.24 |
[Numpy] 연산 (0) | 2018.04.24 |
[Numpy] slicing, indexing (0) | 2018.04.24 |
[Numpy] numpy 배열, 배열 생성 함수 (0) | 2018.04.16 |