2012-07-02 6 views
78

numpy 배열이 비어 있는지 여부를 어떻게 확인할 수 있습니까?numpy 어레이가 비어 있는지 여부를 어떻게 확인할 수 있습니까?

다음 코드를 사용했지만 배열에 0이 있으면 실패합니다.

if not self.Definition.all(): 

이 해결책입니까?

if self.Definition == array([]): 
+4

'len (array ([0])'은 1입니다. –

+2

길이가 0 인 배열, 모두 0을 포함하는 배열, 아니면 둘 다? 'empty'에 대한 정의는 무엇입니까 – jozzas

+6

@StevenRumbalski :하지만'len (array ([])'도 1입니다! – strpeter

답변

132

당신은 항상 .size 속성을 살펴 수 있습니다

import numpy as np 
a = np.array([]) 
print a.size # 0 
8

http://www.scipy.org/Tentative_NumPy_Tutorial#head-6a1bc005bd80e1b19f812e1e64e0d25d50f99fe2

NumPy와의 주요 목적은 균일 한 다차원 배열입니다. Numpy 차원에서는 축이라고 부릅니다. 축 수는 계급입니다. Numpy의 배열 클래스는 ndarray라고 불립니다. 별칭 배열에서도 알려져 있습니다. ndarray 객체의 더 중요한 속성은 다음과 같습니다.

ndarray.ndim
배열의 축 (차원) 수입니다. 파이썬 세계에서는 차원 수를 계급이라고합니다.

ndarray.shape
배열의 크기. 이것은 각 차원의 배열 크기를 나타내는 정수의 튜플입니다. n 개의 행과 m 개의 열이있는 행렬의 경우 shape는 (n, m)이됩니다. 따라서 모양 튜플의 길이는 차원 또는 차원 수 인 ndim입니다.

ndarray.size
배열의 총 요소 수입니다. 이것은 모양의 요소의 곱과 같습니다.

관련 문제