Python 3.x Python3.X中为空时ndarray的不一致行为

Python 3.x Python3.X中为空时ndarray的不一致行为,python-3.x,numpy,multidimensional-array,scikit-learn,Python 3.x,Numpy,Multidimensional Array,Scikit Learn,当我使用scikit学习分类器模型预测一个类时 class=modelftr.predict(X_t) 该类变量返回 >>class array(['class1'],dtype='<U47') 错误生成为: 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 TypeError:需要一个整数 为什么会出现这种行为?第一个示例是一个1元素数组: In [50]: a=np.array(['one'],dtype='U10') In [51]: a.shape Out[

当我使用scikit学习分类器模型预测一个类时

class=modelftr.predict(X_t)
该类变量返回

>>class

array(['class1'],dtype='<U47')
错误生成为:

回溯(最近一次呼叫最后一次):

文件“”,第1行,在

TypeError:需要一个整数


为什么会出现这种行为?

第一个示例是一个1元素数组:

In [50]: a=np.array(['one'],dtype='U10')

In [51]: a.shape
Out[51]: (1,)

In [52]: a[0]
Out[52]: 'one'
第二个是包含0个元素的数组

In [53]: a=np.array([],dtype='U10')

In [54]: a.shape
Out[54]: (0,)
唯一允许的索引是使用空元组:

In [56]: a[()]
Out[56]: 
array([], 
      dtype='<U10')

到底是什么代码产生了最后一个错误

第一个示例是一个1元素数组:

In [50]: a=np.array(['one'],dtype='U10')

In [51]: a.shape
Out[51]: (1,)

In [52]: a[0]
Out[52]: 'one'
第二个是包含0个元素的数组

In [53]: a=np.array([],dtype='U10')

In [54]: a.shape
Out[54]: (0,)
唯一允许的索引是使用空元组:

In [56]: a[()]
Out[56]: 
array([], 
      dtype='<U10')

到底是什么代码产生了最后一个错误

最后一个错误是在声明本身时产生的,我不确定,但我觉得是dtype造成的。最后一个错误是在声明本身时产生的,我不确定,但我觉得是dtype造成的。