5_numpy.md

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