0Pricing
Learn AI with Python · 강의

배열 생성 및 속성

np.array(), np.zeros/ones/eye/arange/linspace, shape, dtype, ndim, size를 학습합니다.

배열 생성 및 속성은(는) CoddyKit의 무료 Learn AI with Python 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Learn AI with Python 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.

ndarray

NumPy의 핵심 객체는 ndarray입니다. 연속된 메모리에 저장되는 고정 크기의 동종 숫자 격자이며, 이러한 메모리 배치 덕분에 NumPy가 빠르게 동작합니다.

import numpy as np
a = np.array([1, 2, 3, 4])
print(a)   # [1 2 3 4]

중첩 목록에서 만들기

목록의 목록을 전달하면 2차원 배열을 만들 수 있습니다. NumPy는 구조에서 형태를 추론합니다.

m = np.array([[1, 2, 3], [4, 5, 6]])
print(m)
# [[1 2 3]
#  [4 5 6]]

0과 1로 채운 배열

np.zeros와 np.ones는 지정한 형태의 배열을 미리 할당합니다. 값을 채우기 전에 자리 표시자를 만드는 표준적인 방법입니다.

print(np.zeros((2, 3)))   # 2x3 of 0.0
print(np.ones(4))         # [1. 1. 1. 1.]

eye로 단위 행렬 만들기

np.eye(n)은 n x n 단위 행렬을 만듭니다. 대각선에는 1이, 나머지 위치에는 0이 들어갑니다. 선형 대수에 필수적입니다.

print(np.eye(3))
# [[1. 0. 0.]
#  [0. 1. 0.]
#  [0. 0. 1.]]

arange로 범위 만들기

np.arange(start, stop, step)은 Python의 range처럼 동작하지만 배열을 반환하며 부동소수점 수를 간격으로 사용할 수 있습니다.

print(np.arange(0, 10, 2))   # [0 2 4 6 8]
print(np.arange(0, 1, 0.25))  # [0.   0.25 0.5  0.75]

linspace로 균등한 간격 만들기

np.linspace(start, stop, num)은 양 끝점을 모두 포함하여 균등한 간격의 점을 num개 반환합니다. 그래프의 축을 만들기에 적합합니다.

print(np.linspace(0, 1, 5))   # [0.   0.25 0.5  0.75 1.  ]

arange와 linspace 비교

간격을 알고 있다면 arange를 사용하고, 점의 개수를 알고 있다면 linspace를 사용하세요. linspace는 부동소수점 간격에서 발생하는 오차 누적을 방지합니다.

# 50 points from 0 to 2*pi for a smooth curve
x = np.linspace(0, 2 * np.pi, 50)

형태와 차원 수

.shape은 차원별 크기의 튜플이고, .ndim은 차원 수입니다. 2x3 배열의 형태는 (2,3)이고 ndim은 2입니다.

m = np.array([[1, 2, 3], [4, 5, 6]])
print(m.shape)   # (2, 3)
print(m.ndim)    # 2

크기와 데이터 형식

.size는 전체 요소 개수이고, .dtype은 요소의 데이터 형식입니다. NumPy는 효율적인 숫자 데이터 형식을 자동으로 선택합니다.

print(m.size)    # 6
print(m.dtype)   # int64

요소 크기와 메모리

.itemsize는 요소 하나의 바이트 크기입니다. 배열이 사용하는 메모리 용량을 추정하려면 .size와 곱하세요.

print(m.itemsize)          # 8 (bytes per int64)
print(m.size * m.itemsize) # 48 bytes total

데이터 형식 선택하기

메모리를 절약하거나 정밀도를 보장하기 위해 데이터 형식을 강제로 지정할 수 있습니다. float32는 float64에 비해 메모리 사용량을 절반으로 줄입니다.

a = np.array([1, 2, 3], dtype=np.float32)
print(a.dtype)      # float32
print(a.itemsize)   # 4

빠른 확인

배열 생성에 대해 배운 내용을 테스트해 보세요.

복습

배열 생성 도구 모음입니다.

  • 목록에서 만드는 np.array, 자리 표시자를 만드는 np.zeros와 np.ones, 단위 행렬을 만드는 np.eye
  • 간격 기준의 np.arange와 개수 기준의 np.linspace
  • 속성: shape, ndim, size, dtype, itemsize

자주 묻는 질문

“배열 생성 및 속성” 강의는 무료인가요?

네 — “배열 생성 및 속성” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Learn AI with Python 강의 전체를 잠금 해제할 수 있습니다. Learn AI with Python 강의에는 총 4개의 강의가 포함되어 있습니다.

“배열 생성 및 속성”에서 뭘 배우나요?

np.array(), np.zeros/ones/eye/arange/linspace, shape, dtype, ndim, size를 학습합니다. 브라우저에서 직접 실행하는 실습 코드로 Learn AI with Python을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Learn AI with Python을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Learn AI with Python은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.

“배열 생성 및 속성” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Learn AI with Python 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Learn AI with Python 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 배열 생성 및 속성
  2. 인덱싱, 슬라이싱, 고급 인덱싱
  3. 브로드캐스팅과 벡터화 연산
  4. NumPy를 활용한 선형대수
← Learn AI with Python(으)로 돌아가기