Numpy basic

type vs dtype

X = [[1,5,4,3,2]]
X.type
 <class 'numpy.ndarray'>
X.dtype
dtype('int64')

type: X 자체의 타입을 출력함
dtype: X 내부의 원소들의 타입을 출력함

Ndim

ndarray의 dimention을 알려줌. 1차원이면 1, 2차원이면 2, 이런 식으로.

[[]] -> 2
[] -> 1

shape

ndarray의 차원을 튜플 형태로 제공한다. 2 x 3일 경우, (2,3) 이런 식으로.

y = np.zeros((2, 3, 4))
y.shape
(2, 3, 4)
y.shape = (3, 8)
y
array([[ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.]])

np.vstack

vstack을 사용할 때는 1개의 argument만 할당해야 한다.
따라서 여러 개의 무언가를 할당할 시에는 싱글 리스트로 묶어준 후 함수를 사용한다.

B = np.vstack([a1.T,a2.T,a3.T,a4.T])

그렇지 않을 시 아래와 같은 오류가 발생한다.

TypeError: _vhstack_dispatcher() takes 1 positional argument but 4 were given

np.concatenate

concatenate를 사용할 때는 여러개를 할당하기 위해 소괄호로 묶어주어야 한다.

B = np.concatenate((a1.T,a2.T,a3.T,a4.T))

그렇지 않으면 아래와 같은 오류가 생긴다.

TypeError: only integer scalar arrays can be converted to a scalar index

좋은 웹페이지 즐겨찾기