NumPy를 이용하여 데이터 인덱싱, 슬라이싱을 구현해 보려고 한다.
import numpy as np
gdp_array = np.array([
[12257, 11561, 13165, 14673, 16496, 19403], # 대한민국
[39169, 34406, 32821, 35387, 38299, 37813], # 일본
[959, 1053, 1149, 1289, 1509, 1753], # 중국
[36335, 37133, 38023, 39496, 41713, 44115] # 미국
])
기초적으로 위 array의 자리 숫자를 알아보자 컴퓨터공학을 전공한다면 단번에 자리값을 알것이다.
# 0 1 2 3 4 5
[12257, 11561, 13165, 14673, 16496, 19403], # 0
[39169, 34406, 32821, 35387, 38299, 37813], # 1
[959, 1053, 1149, 1289, 1509, 1753], # 2
[36335, 37133, 38023, 39496, 41713, 44115] # 3
위 규칙을 알고나서 이제 데이터 인덱싱과 슬라이싱을 구현해 보려고 한다.
1. gdp_array을 활용하여 값을 추출해보자
gdp_array[1]
출력 : array([39169, 34406, 32821, 35387, 38299, 37813])
Python의 기준이 0임으로 1을 출력하고자 하면 2번줄이 출력되게 된다.
gdp_array[1][4]
gdp_array[1, 4]
출력 : 38299
출력 : 38299
Python기준 행(1) 열(4)번
gdp_array[1:3, 2:5]
출력 : array([[32821, 35387, 38299],
[ 1149, 1289, 1509]])
Python기준 행(1, 2) 열(2, 4) 까지의 값이다.
gdp_array[1:3, 2:]
출력 : array([[32821, 35387, 38299, 37813],
[ 1149, 1289, 1509, 1753]])
Python기준 행(1, 2) 열(2, 5) 까지의 값이다.
gdp_array[:3, 2:5]
출력 : array([[13165, 14673, 16496],
[32821, 35387, 38299],
[ 1149, 1289, 1509]])
Python기준 행(0, 2) 열(2, 4) 까지의 값이다.
gdp_array[:, 2:5]
출력 : array([[13165, 14673, 16496],
[32821, 35387, 38299],
[ 1149, 1289, 1509],
[38023, 39496, 41713]])
Python기준 행(0, 3) 열(2, 4) 까지의 값이다.
gdp_array[1:3, :]
출력 : array([[39169, 34406, 32821, 35387, 38299, 37813],
[ 959, 1053, 1149, 1289, 1509, 1753]])
Python기준 행(1, 2) 열(0, 5) 까지의 값이다.