본문 바로가기

자바, 파이썬

[파이썬] 넘파이 - 다차원 배열 쉽게 다루기


import numpy as np

 

배열 생성

a = np.array([1, 2, 3, 4, 5, 6])

a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

 

np.zeros(2) # array([0., 0.])

np.ones(2) # array([1., 1.]) 기본 dtype=np.float64

np.ones(2, dtype=np.int64)

 

np.arange(4) # array([0, 1, 2, 3])

np.arange(2, 9, 2) # array([2, 4, 6, 8])

np.linspace(0, 10, num=5) # array([ 0. ,  2.5,  5. ,  7.5, 10. ])

 

배열 요소 다루기

np.sort(arr)

np.concatenate((a, b))

np.concatenate((x, y), axis=0) # y축으로 묶기

 

배열 정보

a.shape

a.size

a.ndim

 

배열 변형

a = np.arange(6) # [0 1 2 3 4 5]

b = a.reshape(3, 2) # [[0 1] [2 3] [4 5]]


인덱싱, 슬라이싱

data = np.array([1, 2, 3])
data[1] # 2
data[0:2] # array([1, 2])
data[1:] # array([2, 3])
data[-2:] # array([2, 3])

 

a = np.array([[1 , 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

print(a[a < 5])
[1 2 3 4]

five_up = (a >= 5)
print(a[five_up])
[ 5  6  7  8  9 10 11 12]

divisible_by_2 = a[a%2==0]
print(divisible_by_2)
[ 2  4  6  8 10 12]

c = a[(a > 2) & (a < 11)]
print(c)
[ 3  4  5  6  7  8  9 10]

five_up = (a > 5) | (a == 5)
print(five_up)
[[False False False False]
 [ True  True  True  True]
 [ True  True  True True]]


배열 연산

브로드캐스팅


 

 

 

넘파이 객체 저장&로드

 

Matplotlib 연계