array.shape()给出错误元组不可调用

时间:2014-08-04 18:26:23

标签: python arrays numpy tuples

我有一个名为results的2D numpy数组,它包含自己的数据数组,我想进入它并使用每个列表:

for r in results:
    print "r:"
    print r
    y_pred = np.array(r)
    print y_pred.shape()

这是我得到的输出:

r:
[ 25.  25.  25.  25.  25.  25.  26.  26.  26.  26.  26.  22.  27.  27.  42.
  23.  23.  23.  28.  28.  28.  44.  29.  29.  30.  30.  30.  18.  18.  18.
  19.  30.  17.  17.  17.  17.   2.  19.   2.  17.  17.  17.  17.  17.  17.
   4.  17.  17.  41.   7.  17.  19.  19.  19.  10.  32.   4.  19.  34.  19.
  34.  34.  34.  34.  34.  34.  20.  20.  20.  36.  36.  36.   4.  36.  36.
  22.  22.  22.  22.  22.  22.  23.  23.  23.  27.  27.  27.  24.  39.  39.
  10.  10.  10.   6.  10.  10.  11.  11.  11.  11.  11.  11.  12.  12.  12.
  12.  12.  12.  13.  13.  13.  14.  14.  14.  15.  15.  15.   1.  17.   1.
   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.   2.
  19.  19.  19.   2.   2.   4.   3.   3.   3.   4.   4.   4.   4.   4.   4.
   4.  19.   4.   4.   4.  17.   5.   5.   5.   6.   6.   6.   6.   6.   6.
   7.   7.   7.   7.   7.   7.   8.   8.   8.   8.   8.   8.   9.   9.   9.
  23.  38.  38.  34.  34.  10.  17.  17.  26.   0.  42.   0.  18.  32.  32.
   0.   0.  21.  38.  38.  38.  27.  27.  27.   0.   0.   0.  34.   2.   2.
   0.  26.  26.  36.   0.  36.  36.  36.  23.   0.  27.  38.  25.  25.  25.
  26.  26.  26.   0.  15.  15.  32.  38.  38.   0.  32.  32.  32.  41.  32.
   7.  34.  32.  42.  34.  34.  36.  36.  25.  32.  32.  32.  36.  17.   8.
  32.  17.  38.   3.   3.   3.  18.  18.  18.   0.   1.   1.  34.   1.   1.
  34.  17.  17.  34.  34.  34.  34.  34.  34.  17.  17.  17.  24.   2.  32.
   2.   2.   2.   0.   2.   2.   0.  34.  34.   0.   1.   1.  38.  23.  38.]
Traceback (most recent call last):
  File "C:\Users\app\Documents\Python Scripts\gbc_classifier_test.py", line 93, in <module>
    print y_pred.shape()
TypeError: 'tuple' object is not callable

我不明白为什么y_pred不是常规数组以及为什么它被视为元组,我已使用r将其指定为数组。

1 个答案:

答案 0 :(得分:58)

shape只是一个属性,而不是方法。只需使用y_pred.shape(无括号)。

(错误消息并非告诉您y_pred是一个元组,它告诉您y_pred.shape是一个元组。)