NumPy

NumPy는 Numerical Python의 약자로, 수치 연산을 효율적으로 처리할 수 있는 파이썬의 핵심 라이브러리이다.

배열(Array), 행렬(Matrix), 고차원 배열 및 그에 대한 연산을 지원하고, 수학적·과학적 계산을 할 때 필수적으로 사용한다.

 

주요 특징

  • 고속 연산:  Numpy는 C로 구현되어 있어 파이썬의 기본 리스트보다 훨씬 빠르게 수치 연산을 수행할 수 있다.
  • 다차원 배열 지원: 파이썬의 기본 리스트는 1차원 배열만 지원하지만, Numpy는 다차원 배열을 지원해 다양한 차원의 데이터를 처리할 수 있다.
  • 백터화 연산: 반복문을 사용하지 않고, 배열에 대한 연산을 백터화하여 빠르게 처리한다.
  • 다양한 수학 함수: 수학 함수, 선형 대수 연산, 푸리에 변환 등 수치적 계산을 위한 함수들을 제공한다.

 

NumPy Install

pip install numpy

 

NumPy Import

from numpy import *
또는
import numpy as np

 

NumPy Type

List (리스트)

  • 리스트는 파이썬의 기본 자료형으로, 순서가 있는 집합이다.
  • 리스트는 여러 데이터를 순차적으로 저장하고, 다양한 타입의 요소를 포함한다.
  • 인덱싱, 슬라이싱 등을 통해 요소에 접근할 수 있다.
  • 리스트의 요소를 추가, 수정, 삭제할 수 있다.

 

numpy.ndarray (NumPy 배열)

  • 고정 크기 배열이고, 메모리 효율적이다.
  • 다차원 배열 객체로, 고속 연산이 가능하다.
  • 백터화 연산 덕분에 반복문 없이 배열에 대한 연산이 가능하다.
  • 동일한 타입의 데이터만 저장할 수 있다. 즉, 하나의 배열 안에는 모든 원소의 데이터 타입이 동일하다.
import numpy as np

data = [1, 2, 3, 4] # type = list
np_data = np.array(data) # type = numpy.ndarray

print(data) # [1, 2, 3, 4]
print(np_data) # [1 2 3 4]

 

import numpy as np

data = [1, 2, 3, 4]

list_arr = data * 10
np_arr = np.array(data) * 10

print(list_arr)
print(np_arr)

 

multi_arr = np.array([
    [1, 2, 3, 4],
    [10, 20, 30, 40],
    [100, 200, 300, 400]
])

# 행 > 열 순서로 접근
print(multi_arr[0]) # [1 2 3 4]
print(multi_arr[1][2]) # 30
print(multi_arr[1, 2]) # 30
print(multi_arr[:, 3]) # [4 40 400]

+ Recent posts