zoukankan      html  css  js  c++  java
  • 13、numpy——算术函数

    NumPy 算术函数

    1、NumPy 算术函数包含简单的加减乘除: add()subtract()multiply() 和 divide()

    需要注意的是数组必须具有相同的形状或符合数组广播规则。

     1 import numpy as np
     2 a = np.arange(9, dtype=np.float_).reshape(3, 3)
     3 print('第一个数组:')
     4 print(a)
     5 print('第二个数组:')
     6 b = np.array([10, 10, 10])
     7 print(b)
     8 print('两个数组相加:')
     9 print(np.add(a, b))
    10 print('两个数组相减:')
    11 print(np.subtract(a, b))
    12 print('两个数组相乘:')
    13 print(np.multiply(a, b))
    14 print('两个数组相除:')
    15 print(np.divide(a, b))

    执行结果:

    第一个数组:
    [[0. 1. 2.]
     [3. 4. 5.]
     [6. 7. 8.]]
    第二个数组:
    [10 10 10]
    两个数组相加:
    [[10. 11. 12.]
     [13. 14. 15.]
     [16. 17. 18.]]
    两个数组相减:
    [[-10.  -9.  -8.]
     [ -7.  -6.  -5.]
     [ -4.  -3.  -2.]]
    两个数组相乘:
    [[ 0. 10. 20.]
     [30. 40. 50.]
     [60. 70. 80.]]
    两个数组相除:
    [[0.  0.1 0.2]
     [0.3 0.4 0.5]
     [0.6 0.7 0.8]]

    2、其他算数函数

    2.1 numpy.reciprocal()

    numpy.reciprocal() 函数返回参数逐元素的倒数。如 1/4 倒数为 4/1

    1 import numpy as np
    2 a = np.array([0.25, 1.33, 1, 100])
    3 print('我们的数组是:')
    4 print(a)
    5 print('调用 reciprocal 函数:')
    6 print(np.reciprocal(a))

    执行结果:

    我们的数组是:
    [  0.25   1.33   1.   100.  ]
    调用 reciprocal 函数:
    [4.        0.7518797 1.        0.01     ]

    2.2 numpy.power()

    numpy.power() 函数将第一个输入数组中的元素作为底数,计算它与第二个输入数组中相应元素的幂。

     1 import numpy as np
     2 a = np.array([10, 100, 1000])
     3 print('我们的数组是;')
     4 print(a)
     5 print('调用 power 函数:')
     6 print(np.power(a, 2))
     7 print('第二个数组:')
     8 b = np.array([1, 2, 3])
     9 print(b)
    10 print('再次调用 power 函数:')
    11 print(np.power(a, b))

    执行结果:

    我们的数组是;
    [  10  100 1000]
    调用 power 函数:
    [    100   10000 1000000]
    第二个数组:
    [1 2 3]
    再次调用 power 函数:
    [        10      10000 1000000000]

    2.3 numpy.mod()

    numpy.mod() 计算输入数组中相应元素的相除后的余数。 函数 numpy.remainder() 也产生相同的结果

     1 import numpy as np
     2 a = np.array([10, 20, 30])
     3 b = np.array([3, 5, 7])
     4 print('第一个数组:')
     5 print(a)
     6 print('第二个数组:')
     7 print(b)
     8 print('调用 mod() 函数:')
     9 print(np.mod(a, b))
    10 print('调用 remainder() 函数:')
    11 print(np.remainder(a, b))

    输出结果:

    第一个数组:
    [10 20 30]
    第二个数组:
    [3 5 7]
    调用 mod() 函数:
    [1 0 2]
    调用 remainder() 函数:
    [1 0 2]
  • 相关阅读:
    剑指Offer-30.连续子数组的最大和(C++/Java)
    剑指Offer-29.最小的K个数(C++/Java)
    UVA 1616 Caravan Robbers 商队抢劫者(二分)
    UVA 10570 Meeting with Aliens 外星人聚会
    UVA 11093 Just Finish it up 环形跑道 (贪心)
    UVA 12673 Erratic Expansion 奇怪的气球膨胀 (递推)
    UVA 10954 Add All 全部相加 (Huffman编码)
    UVA 714 Copying Books 抄书 (二分)
    UVALive 3523 Knights of the Round Table 圆桌骑士 (无向图点双连通分量)
    codeforecs Gym 100286B Blind Walk
  • 原文地址:https://www.cnblogs.com/weststar/p/11589330.html
Copyright © 2011-2022 走看看