넘파이(Numpy)는 Numerical Python의 줄임말로 숫자, 수치에 관한 파이썬 라이브러리이다.
넘파이 사용하기
넘파이를 사용하기 위해서는 라이브러리를 코드로 불러온다.
import numpy as np
구글 코랩은 ctrl enter를 눌러 실행할 수 있다.
넘파이 배열 (ndarray)
넘파이의 핵심은 ndarray 이다. n-dimensional array로 n차원의 배열이며, 수학에서는 이차행렬을 생각해 볼수 있다.
1차원 배열은 단순하다.
import numpy as np
arr1=np.array([1,2,3,4])
print(arr1)
파이썬의 [리스트]를 넘파이 배열로 변한하여 출력한다.
파이썬의 리스트와 다른점은 넘파이 배열은 ',' 쉼표가 빠진걸 볼 수 있다.

파이썬의 [리스트]에 곱하기 2를 하면 문자열 *2 처럼 두번 나열 된다.
넘파이의 배열 리스트에 곱하기 2를 하면 실제 숫자가 곱해진다.
이처럼 넘파이 배열은 백터화 연산으로 수치 연산을 편하게 한다.
2차원 배열
2차원 배열은 말 그대로 엑셀을 떠올린다.
넘파이의 배열을 이해하기 위해서는 axis(축)의 개념을 이용한다.
2차원 배열은 x축과 y축으로 생긴 형태이다.
array([[1,0,3],
[2,4,5]])
| 1 | 0 | 3 |
| 2 | 4 | 5 |
첫번째 대괄호 안에 있는 요소들이 axis0의 요소 즉 axis0은 2개이다. [],[]
그 안에 있는 요소들이 대괄호가 axis1 즉 axi1은 3개로 구성되어 있다. 1/0/3
=> 사실 2차원 배열은 축을 알 필요가 없이 직관적이다. 축은 3차원 배열을 이해할때 응용해보자.
3차원 배열
3차원 배열은 큐브모양으로 형성되어 있는 3D다.
3차원 배열에 axis(축)의 개념을 넣으면 x축은 axis 2, y축은 axis1, z축은 axis0으로 본다.
array( [
[ [1,0,3] , [1,0,3] ],
[ [1,0,3] , [1,0,3] ],
[ [1,0,3] , [1,0,3] ],
[ [1,0,3] , [1,0,3] ]
] )
동일하게 적용해보자. 3차원 배열의 첫번째 대괄호를 axis0 즉, 두덩이이 axis0은 4개이다.
그안에 괄호인 axis1 역시도 2개이다. [1,0,3] , [1,0,3] 이니까.
그안의 괄호인 axis3은 바로 3개이다. 1/0/3
즉 z축이 4개로 층층이 쌓인 이차원 배열을 떠올리면 쉽다.
넘파이의 데이터 타입
넘파이의 데이터 타입은 다음과 같이 볼 수 있다.
int64는 정수 integer 타입에 64bit라는 의미를 나타낸다.

넘파이를 왜쓰는걸까 ?
대체 이 지루한 넘파이를 왜 쓰는 거냐 하면
1. 메모리 사용 효율이 좋아 속도가 빠르다.
2. 선형 대수 연산을 지원한다.
-> 선형 대수는 줄(벡터)나 표(행렬)로 숫자를 다루는 수학을 말한다 (즉, 공간을 다룰 수 있다)
3. 벡터화 연산 지원
- 배열의 모든 요소에 대해 루프없이 한 번에 연산을 수행하는 기법이다.
파이썬을 리스트 끼리 더하면, 문자열 처럼 붙어지지만
넘파이의 배열 리스트는 두 리스트의 수치가 더해진다.
'IT&게임 > 파이썬(Python)' 카테고리의 다른 글
| [파이썬 기초 - 1장] python 개발환경과 IDLE (0) | 2025.10.19 |
|---|---|
| 00. 데이터 시각화 라이브러리 Matplotlib (1) | 2025.10.16 |
| 04.넘파이(numpy) 배열의 크기 변환 하기- reshape, resize,vstack,hstack (0) | 2025.09.24 |
| 03.넘파이(numpy) 수학 연산과 인덱싱 슬라이싱 (0) | 2025.09.24 |
| 02. 넘파이(Numpy) 파이썬 리스트 차이, 초기화 함수, arrage()와 linspace()용도 차이 (0) | 2025.09.24 |
댓글