2017-06-10 44 views
0

這裏是一個可運行的代碼片斷,它會在我的機器上產生錯誤。 我有這個錯誤(零大小的數組,以減少操作最大沒有身份)。零大小數組到最大減少操作數沒有標識

reader = csv.reader(open(BASE_PATH + 'labels.csv')) 
# skip the header 
next(reader) 

X = [] 
y = [] 

for row in reader: 
    label = row[2] 
    if len(label) > 0 and label.find(',') == -1: 
     filename = get_filename_for_index(row[1]) 
     img_file = cv2.imread(BASE_PATH + filename) 
     if img_file is not None: 
      img_file = scipy.misc.imresize(arr=img_file, size=(120, 160, 3)) 
      img_arr = np.asarray(img_file) 
      img_arr = apply_color_mask(img_arr) 
      X.append(img_arr) 
      y.append(label) 


X = np.asarray(X) 
y = np.asarray(y) 

encoder = LabelEncoder() 
encoder.fit(y) 
encoded_y = encoder.transform(y) 

y = np_utils.to_categorical(encoded_y) 


**Error** 
ValueError        Traceback (most recent call last) 
<ipython-input-7-49c49b99292b> in <module>() 
    26 encoded_y = encoder.transform(y) 
    27 
---> 28 y = np_utils.to_categorical(encoded_y) 

~/.local/lib/python3.5/site-packages/keras/utils/np_utils.py in to_categorical(y, num_classes) 
    20  y = np.array(y, dtype='int').ravel() 
    21  if not num_classes: 
---> 22   num_classes = np.max(y) + 1 
    23  n = y.shape[0] 
    24  categorical = np.zeros((n, num_classes)) 

~/.local/lib/python3.5/site-packages/numpy/core/fromnumeric.py in amax(a, axis, out, keepdims) 
    2270 
    2271  return _methods._amax(a, axis=axis, 
-> 2272       out=out, **kwargs) 
    2273 
    2274 

~/.local/lib/python3.5/site-packages/numpy/core/_methods.py in _amax(a, axis, out, keepdims) 
    24 # small reductions 
    25 def _amax(a, axis=None, out=None, keepdims=False): 
---> 26  return umr_maximum(a, axis, None, out, keepdims) 
    27 
    28 def _amin(a, axis=None, out=None, keepdims=False): 

值錯誤:零大小的數組還原操作的最大不具有身份

所以請任何人能幫助我。

回答

0

你可以嘗試把後衛的一些國王的內部失敗的操作:

if np.any(encoded_y): 
    y = np_utils.to_categorical(encoded_y)