Pythonの配列の計算
numpyを使う。
普通の配列の場合は直接演算はできない。
>>> a = [1,2,3] >>> b = [4,5,6] >>> a -b Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for -: 'list' and 'list'
numpyを利用すると計算ができる。
>>> import numpy >>> a = [1,2,3] >>> b = [4,5,6] >>> numpy.add(a,b) array([5, 7, 9]) >>> numpy.subtract(a,b) array([-3, -3, -3]) >>> numpy.multiply(a,b) array([ 4, 10, 18]) >>> numpy.divide(a,b) array([ 0.25, 0.4 , 0.5 ]) >>> numpy.dot(a,b) 32 >>> 4 + 2 * 5 + 3 * 6 32 >>> c = [[1,2,3],[4,5,6],[7,8,9]] >>> numpy.dot(c,b) array([ 32, 77, 122])
arrayにしておくと演算子が使える。
>>> a = [1,2,3] >>> b = [4,5,6] >>> a = numpy.array(a) >>> b = numpy.array(b) >>> a - b array([-3, -3, -3]) >>> a + b array([5, 7, 9]) >>> a * b array([ 4, 10, 18]) >>> a / b array([ 0.25, 0.4 , 0.5 ])