0

Python NumPy を使用して、行列の列の合計を計算します。

import numpy
from StringIO import StringIO

fileName = 'test2.csv'
myFile = open(fileName,'r')
print "Reading data from '%s' ..." % fileName
data = myFile.read() 
myFile.close()

data = numpy.genfromtxt(StringIO(data), delimiter=',', usecols=(0,1,2))
print "Calculating ..."

print data[:,2]
sumA1 = data[:,2].sum
print "shape =", data.shape
print "sumA1 =", str(sumA1)
print "ok"

次に内容test2.csv:

12,13,14,17
1,2,3,4
12,13,14,17
1,2,3,4
12,13,14,17
1,2,3,4
12,13,14,17
1,2,3,4
12,13,14,17

私はこの出力を得る

Reading data from 'test2.csv' ...
Calculating ...
[ 14.   3.  14.   3.  14.   3.  14.   3.  14.]
shape = (9, 3)
sumA1 = <built-in method sum of numpy.ndarray object at 0x00FD8EF8>
ok

その奇妙なメッセージの代わりに「sumA1 = 82」を取得できないのはなぜですか? 私は何を間違っていますか?

事前にどうもありがとうございました。

4

1 に答える 1

6

関数を呼び出す必要がありsumます。このコードを置き換えるだけです:

sumA1 = data[:,2].sum

これで:

sumA1 = data[:,2].sum()
于 2012-11-27T11:22:25.320 に答える