파이썬 API 둘러보기

numpy.ndarray

유명한 numpy이다. 따로 설치해야 하는데, 표준모듈인 array보다 낫다고들 한다.

제대로 쓰려면 공부할 게 많아 보이지만, 일단은 간단히 써 본 부분만 정리해둔다.

 

배열 만들기

>>> np.zeros(10)
array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])

>>> np.full((10,), 'x')
array(['x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x'], dtype='<U1')

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

>>> np.arange(12).reshape( (3,4) )
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
       
>>> print(np.arange(12).reshape((3,4)))
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

 

기본 사용법

복잡한 응용을 배제하고 단순히 2차원 배열로 써 보았다.

일단 좋은 점이

  • 튜플을 인덱스로 쓸 수 있다.
  • 슬라이싱, 특히 열column을 가져오는 일이 간단해진다.
  • 배열 또는 슬라이스의 원소 각각에 대한 연산이 편하다.

 

>>> arr = np.arange(12).reshape((3,4))

>>> print(arr)
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

>>> arr[0,:]
array([0, 1, 2, 3])

>>> arr[0,...]
array([0, 1, 2, 3])

>>> arr[:,0]
array([0, 4, 8])

>>> arr[(0,0)]
0

>>> arr[:,1] = [100, 200, 300]
>>> arr
array([[  0, 100,   2,   3],
       [  4, 200,   6,   7],
       [  8, 300,  10,  11]])

>>> arr < 5
array([[ True, False,  True,  True],
       [ True, False, False, False],
       [False, False, False, False]])

>>> arr[arr<5]
array([0, 2, 3, 4])

 

댓글

댓글 본문
작성자
비밀번호
버전 관리
장과장02
현재 버전
선택 버전
graphittie 자세히 보기