您当前的位置:首页 > 计算机 > 编程开发 > Python

Python科学计算库numpy中的add运算

时间:12-25来源:作者:点击数:

闲言碎语不多讲,直接上代码。

>>> import numpy as np

>>> np.add.accumulate([1,2,3]) # 累加

array([1, 3, 6], dtype=int32)

>>> np.add.accumulate([1,2,3,4,5])

array([ 1,  3,  6, 10, 15], dtype=int32)

>>> np.add.reduce([1,2,3,4,5]) # 连加

15

>>> x = np.array([1,2,3,4])

>>> np.add.at(x, [0,2], 3)  # 下标0和2的元素分别加3

>>> x

array([4, 2, 6, 4])

>>> np.add.outer([1,2,3], [4,5,6])

array([[5, 6, 7],   # 1+4, 1+5, 1+6

    [6, 7, 8],  # 2+4, 2+5, 2+6

    [7, 8, 9]])  # 3+4, 3+5, 3+6

>>> np.add.outer([1,2,3], [4,5,6,7])

array([[ 5,  6,  7,  8],

     [ 6,  7,  8,  9],

     [ 7,  8,  9, 10]])

>>> np.add.outer([1,2,3,4], [5,6,7])

array([[ 6,  7,  8],

    [ 7,  8,  9],

    [ 8,  9, 10],

    [ 9, 10, 11]])

>>> np.add.reduceat(np.arange(8),[0,4, 1,5, 2,6, 3,7])

array([ 6,  4, 10,  5, 14,  6, 18,  7], dtype=int32)

>>> x = np.linspace(0, 15, 16).reshape(4,4)

>>> x

array([[  0.,   1.,   2.,   3.],

    [  4.,   5.,   6.,   7.],

    [  8.,   9.,  10.,  11.],

    [ 12.,  13.,  14.,  15.]])

>>> np.add.reduceat(x, [0, 3, 0])

array([[ 12.,  15.,  18.,  21.],  # row0+row1+row2

    [ 12.,  13.,  14.,  15.],  # row3

    [ 24.,  28.,  32.,  36.]])  # row0+row1+row2+row3

>>> np.add.reduceat(x, [0, 3, 1])

array([[ 12.,  15.,  18.,  21.],   # row0+row1+row2

    [ 12.,  13.,  14.,  15.],  # row3

    [ 24.,  27.,  30.,  33.]]) # row1+row2+row3

>>> np.add.reduceat(x, [0, 3, 2])

array([[ 12.,  15.,  18.,  21.],  # row0+row1+row2

    [ 12.,  13.,  14.,  15.], # row3

    [ 20.,  22.,  24.,  26.]]) # row2+row3

>>> np.add.reduceat(x, [0, 3, 3])

array([[ 12.,  15.,  18.,  21.],  # row0+row1+row2

    [ 12.,  13.,  14.,  15.], # row3

    [ 12.,  13.,  14.,  15.]]) # row3

>>> np.add.reduceat(x, [0, 3, 1, 0])

array([[ 12.,  15.,  18.,  21.],  # row0+row1+row2

    [ 12.,  13.,  14.,  15.], # row3

    [  4.,   5.,   6.,   7.],  # row1

    [ 24.,  28.,  32.,  36.]])  # row0+row1+row2+row3

>>> np.add.reduceat(x, [0, 3, 1, 1])

array([[ 12.,  15.,  18.,  21.],   # row0+row1+row2

    [ 12.,  13.,  14.,  15.],  # row3

    [  4.,   5.,   6.,   7.],  # row1

    [ 24.,  27.,  30.,  33.]])  # row1+row2+row3

>>> np.add.reduceat(x, [0, 3, 1, 2])

array([[ 12.,  15.,  18.,  21.],   # row0+row1+row2

    [ 12.,  13.,  14.,  15.],  # row3

    [  4.,   5.,   6.,   7.], # row1

    [ 20.,  22.,  24.,  26.]])  # row2+row3

>>> np.add.reduceat(x, [0, 3, 1, 3])

array([[ 12.,  15.,  18.,  21.],  # row0+row1+row2

    [ 12.,  13.,  14.,  15.],  # row3

    [ 12.,  14.,  16.,  18.],  # row1

    [ 12.,  13.,  14.,  15.]])  # row3

>>> np.add.reduceat(x, [0, 3, 1, 3], axis=1)  # 对列进行计算

array([[  3.,   3.,   3.,   3.],

    [ 15.,   7.,  11.,   7.],

    [ 27.,  11.,  19.,  11.],

    [ 39.,  15.,  27.,  15.]])

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门