본문으로 바로가기

1. "np.array"  vs  "list"

- 넘파이 배열이라고도 부르며, list와 비슷한 특징을 가지고 있다.

- 하지만 아래 두 가지 특징이 list와 다르다.

 

1) 하나의 데이터 타입

np.array 배열 안에는 하나의 데이터 타입만 가질 수 있다. 연산을 더 용이하게 진행하기 위해서인데, 정보의 손실 없이 하나의 데이터 타입으로 통합되어버린다.

다시 말해서, 배열에 int, str, bool이 담긴다면, str 타입으로 통합된다.

 

2) 행렬 내부/외부 연산 가능

list에서는 [1,2,3]*2를 하면, [1,2,3,1,2,3]이 출력된다. 하지만, 넘파이 배열에서는 [2,4,6]이 출력되게 된다.

 

 

 

2. 기초 함수

1) np.arange

v1 = np.arange(12)

 

2) np.reshape

v2 = v1.reshape(2, 6)

# 행 먼저 설정하고, 나머지는 맞춰준다
v1.reshape(3, -1)

# values를 열부터 채우고 싶을 때
v3 = v1.reshape(2, 6, order='F')

# 메서드-체이닝 (Method-chaining): 연달아 쓰는 것
np.arange(12).reshape(2,6).reshape(4,-1)

 

3) 최대/최소/평균/분산

np.max(v1)
np.min(v1)
np.mean(v1)
np.var(v1)
np.std(v1)

 

 

3) 사칙연산

# element-wise 연산
np.add(v1, v1)
np.subtract(v1, v1)
np.multiply(v1, v1)
np.dot(v1, v1)