1Dimension, 2Dimension, 3Dimension
https://webnautes.tistory.com/1176
1.4. 차원 개수와 차원 크기
numpy.array 함수의 아규먼트로 사용되는 리스트 또는 튜플을 중첩하면 2차원 이상의 배열을 만들 수 있습니다.
1차원 배열을 만들기 위한 아규먼트는 데이터를 원소로 하는 리스트입니다.
[ 1, 2, 3, 4 ]
2차원 배열을 만들기 위한 아규먼트는 1차원 리스트를 원소로 하는 리스트입니다.
[ [1, 2, 3, 4], [4, 5, 6, 7], [8, 9, 10, 11] ]
3차원 배열을 만들기 위한 아규먼트는 2차원 리스트를 원소로 하는 리스트입니다.
[ [[1, 2, 3, 4], [4, 5, 6, 7], [8, 9, 10, 11]], [[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]] ]
NumPy 배열의 차원 개수와 원소 개수는 ndarray.shape 속성을 사용하여 정의합니다.
shape 속성은 튜플로 출력되는데 원소 개수가 NumPy 배열의 차원 개수이며, 각 원소값이 각 차원의 크기입니다.
차원 개수만 확인할 수 있는 ndarray.ndim 속성도 있습니다.
import numpy as np
# 1차원 NumPy 배열 A = np.array([1, 2, 3, 4]) print("A.ndim = ", A.ndim) # ndarray.ndim 속성은 배열의 차원 개수를 리턴합니다. print("A.shape = ", A.shape) # ndarray.shape 속성은 배열의 각 차원 크기를 튜플로 리턴합니다. print("A = ", A) print("\n") # 1차원 배열의 경우 차원이 한 개입니다. # A.ndim = 1 # 첫번째 차원의 크기만 출력됩니다. # A.shape = (4,) # 1차원 배열을 출력해보면 대괄호 사이에 원소가 공백으로 구분되어 첫번째 차원 크기(4개)만큼 출력됩니다. # A = [1 2 3 4] # 2차원 NumPy 배열 B = np.array([ [1, 2, 3, 4], [4, 5, 6, 7], [8, 9, 10, 11] ] ) print("B.ndim = ", B.ndim) print("B.shape = ", B.shape) print("B = \n", B) print("\n") # 2차원 배열의 경우 차원이 두 개입니다. # B.ndim = 2 # 첫번째 차원의 크기, 두번째 차원의 크기 순으로 출력됩니다. # B.shape = (3, 4) # 2차원 배열을 출력해보면 대괄호 사이에 1차원 배열이 줄단위로 구분되어 첫번째 차원 크기(3개)만큼 출력됩니다. # 1차원 배열에는 두번째 차원 크기(4개)만큼 원소가 포함되어 있습니다. # B = # [[ 1 2 3 4] # [ 4 5 6 7] # [ 8 9 10 11]] # 3차원 NumPy 배열 C = np.array([ [[1, 2, 3, 4], [4, 5, 6, 7], [8, 9, 10, 11]], [[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]] ]) print("C = \n", C) print("C.ndim = ", C.ndim) print("C.shape = ", C.shape) # 3차원 배열의 경우 차원이 세 개입니다. # C.ndim = 3 # 첫번째 차원의 크기, 두번째 차원의 크기, 세번째 차원의 크기 순으로 출력됩니다. # C.shape = (2, 3, 4) # 3차원 배열을 출력해보면 대괄호에 두 개의 2차원 배열이 빈 줄로 구분되어 첫번째 차원 크기(2개)만큼 출력됩니다. # 2차원 배열에는 각각 두번째 차원 크기(3개)만큼 1차원 배열이 줄단위 구분으로 포함되어 있습니다. # 1차원 배열에는 각각 세번째 차원 크기(4개)만큼 원소가 포함되어 있습니다. # # C = # [[[ 1 2 3 4] # [ 4 5 6 7] # [ 8 9 10 11]] # # [[12 13 14 15] # [16 17 18 19] # [20 21 22 23]]] |
위 예에서 언급한 ndim, shape 외에도 NumPy 배열의 정보를 확인할 수 있는 속성들이 있습니다.
나머지 속성은 다음 링크에서 확인하세요.
댓글
댓글 쓰기