[플레이데이터 빅데이터 부트캠프]Python 3차원 배열

3차원 배열

Numpy 라이브러리를 사용하여, 1차원 2차원 배열 말고도 주사위처럼 3차원 배열로도 만들 수 있다.

3차원으로 만들어진 배열

위의 배열을 파이썬으로 나타내면,

import numpy as np

a1 = [
      [
       [10, 11, 12],
       [13, 14, 15],
       [16, 17, 18]
      ],
      [
       [20, 21, 22],
       [23, 24, 25],
       [26, 27, 28]
      ],
      [     
       [30, 31, 32],
       [33, 34, 35],
       [36, 37, 38]
      ]
]
a1 = np.array(a1)

이런식으로 3차원의 배열을 나타낼 수 있다고 한다.

배열 안에 배열 그리고 또 그 배열 안에 배열이 있는 셈이다.

ndim과 shape 메소드를 사용하여 차원과 shape를 확인해 볼 수 있다.

a1.ndim
3
a1.shape
(3, 3, 3)

3차원 배열도 1차원 2차원 배열과 마찬가지로 인덱싱과 슬라이싱으로 불러올 수 있다.

a1[0, 0, 0]
10
# 이렇게 인덱싱을 사용하여 원하는 값을 불러오는 방법도 있고,

a1[:, 1: 1] #슬라이싱, 슬라이싱, 인덱싱
array([[14, 17],
       [24, 27],
       [34, 37]])

(슬라이싱 할 때 (:) 만 넣었을 경우에는, 모든 값을, (1:) 이면 1에서 그 뒤 모든 인덱스 값들을 슬라이싱할 수 있다.)