NumPy 배열의 크기 (길이, 차원) 확인하기
shape 속성 사용하기
NumPy 배열은 shape
속성을 가지고 있으며, 이는 배열의 각 차원의 길이를 튜플 형태로 저장합니다. 예를 들어, 2행 3열 배열의 경우 shape
속성은 다음과 같습니다.
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr.shape)
(2, 3)
shape
속성을 사용하여 특정 차원의 길이를 추출할 수도 있습니다. 예를 들어, 첫 번째 차원(행)의 길이는 다음과 같이 가져옵니다.
print(arr.shape[0])
2
ndim 속성 사용하기
ndim
속성은 배열의 차원 수를 나타냅니다. 예를 들어, 2차원 배열의 경우 ndim
속성은 2입니다.
print(arr.ndim)
2
size 속성 사용하기
print(arr.size)
6
len() 함수 사용하기
1차원 배열의 경우 len()
함수를 사용하여 길이를 확인할 수 있습니다.
arr1 = np.array([1, 2, 3])
print(len(arr1))
3
하지만, 2차원 이상의 배열에는 len()
함수를 사용하면 첫 번째 차원의 길이만 반환됩니다.
print(len(arr))
2
내장 함수 사용하기
NumPy 배열을 다른 Python 자료형으로 변환한 후 내장 함수를 사용하여 길이를 확인하는 방법도 있습니다. 예를 들어, 리스트로 변환 후 len()
함수를 사용하는 방법입니다.
arr_list = arr.tolist()
print(len(arr_list))
2
위와 같은 다양한 방법으로 NumPy 배열의 크기(길이, 차원)를 확인할 수 있습니다. 상황에 맞는 가장 적합한 방법을 선택하시기 바랍니다.
추가 정보
import numpy as np
# 2차원 배열 생성
arr = np.array([[1, 2, 3], [4, 5, 6]])
# 다양한 방법으로 배열 크기 확인
print("shape 속성:", arr.shape) # (2, 3)
print("ndim 속성:", arr.ndim) # 2
print("size 속성:", arr.size) # 6
print("len(arr):", len(arr)) # 2 (1차원으로 해석)
print("len(arr.tolist()):", len(arr.tolist())) # 2 (리스트로 변환 후 길이)
# 특정 차원 길이 확인
print("첫 번째 차원 길이:", arr.shape[0]) # 2
print("두 번째 차원 길이:", arr.shape[1]) # 3
# 1차원 배열 생성
arr1 = np.array([7, 8, 9])
# 1차원 배열의 길이 확인
print("len(arr1):", len(arr1)) # 3
shape
속성은 배열의 각 차원 길이를 튜플 형태로 저장합니다.ndim
속성은 배열의 차원 수를 나타냅니다.len()
함수는 1차원 배열의 경우 길이를, 2차원 이상 배열의 경우 첫 번째 차원의 길이만 반환합니다.- 내장 함수를 사용하여 배열을 다른 자료형으로 변환한 후 길이를 확인할 수도 있습니다.
np.prod()
함수는 배열의 모든 요소를 곱하여 결과를 반환하는 함수입니다. axis
인수를 사용하여 특정 차원의 길이를 계산하도록 지정할 수 있습니다. 예를 들어, 다음과 같이 사용하면 두 번째 차원의 길이를 계산할 수 있습니다.
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
length = np.prod(arr, axis=1)
print("두 번째 차원 길이:", length) # [3 3]
for 루프 사용:
for
루프를 사용하여 배열을 반복하고 요소 개수를 직접 세는 방법도 있습니다. 예를 들어, 다음과 같이 사용하면 전체 요소 수를 계산할 수 있습니다.
total_size = 0
for element in arr.flat:
total_size += 1
print("총 요소 수:", total_size) # 6
슬라이싱 사용:
특정 차원의 길이를 알고 있는 경우 슬라이싱을 사용하여 해당 차원의 요소들을 추출하고 길이를 확인하는 방법도 있습니다. 예를 들어, 다음과 같이 사용하면 첫 번째 차원의 길이를 확인할 수 있습니다.
first_dim_length = len(arr[0])
print("첫 번째 차원 길이:", first_dim_length) # 3
내장 함수 사용:
arr_list = arr.tolist()
print("총 요소 수:", len(arr_list)) # 6
주의 사항:
np.prod()
함수는 모든 요소의 곱을 계산하기 때문에 0 이 포함된 배열을 사용할 경우 주의해야 합니다.
python matrix numpy