前言导读
前面一个章节,我们学习了数学函数,这一节我们看看NumPy中的算术函数,其实算术函数无非就是数组的一些加减乘除,这些我们在之前也接触过,今天我们看看NumPy中封装的算术函数有什么区别吧?
算术函数
| 函数名称 | 描述 |
|---|---|
| add() | 加 |
| subtract() | 减 |
| multiply() | 乘 |
| divide() | 除 |
很简单,就是加减乘除,我们直接就在编辑器中进行演示就行。
PS:需要注意的是数组必须具有相同的形状或符合数组广播规则,否则会报错。
示例代码:
"""
@Created on : 2024/5/15 16:09
@creator : er_nao
@File :numpy_23_算术函数.py
@Description :
"""
import numpy as np
a = np.arange(9, dtype=np.float_).reshape(3, 3)
print('第一个数组:')
print(a)
print('\n')
print('第二个数组:')
b = np.array([10, 10, 10])
print(b)
print('\n')
print('两个数组相加:')
print(np.add(a, b))
print('\n')
print('两个数组相减:')
print(np.subtract(a, b))
print('\n')
print('两个数组相乘:')
print(np.multiply(a, b))
print('\n')
print('两个数组相除:')
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]]
大家看到这里,以后是不是感觉有些熟悉呢?好像在哪里见过这种运算结果,没错,就是在广播那一节
没看过的可以去看看:NumPy学习第六课(2):广播(Broadcast)
其他函数
1、numpy.reciprocal()
numpy.reciprocal() 函数返回参数逐元素的倒数,就是把元素值翻个跟头。
示例代码:
a = np.array([5, 2.7, 0.6, 100])
print('原始数组:')
print(a)
print('\n')
print('调用 reciprocal 函数求数组元素的倒数:')
print(np.reciprocal(a))
# 输出结果
# 原始数组:
# [ 5. 2.7 0.6 100. ]
#
#
# 调用 reciprocal 函数求数组元素的倒数:
# [0.2 0.37037037 1.66666667 0.01 ]
2、numpy.power()
numpy.power()函数将第一个输入数组中的元素作为底数,计算它与第二个输入数组中相应元素的幂, 幂次方就是几个底数相乘,很好理解。
a = np.array([10, 100, 1000])
print('原始数组;')
print(a)
print('\n')
print('调用 power 函数后:')
print(np.power(a, 2))
print('\n')
print('第二个数组后:')
b = np.array([1, 2, 3])
print(b)
print('\n')
print('再次调用 power 函数:')
print(np.power(a, b))
# 输出结果
# 原始数组;
# [ 10 100 1000]
#
#
# 调用 power 函数后:
# [ 100 10000 1000000]
#
#
# 第二个数组后:
# [1 2 3]
#
#
# 再次调用 power 函数:
# [ 10 10000 1000000000]
3、numpy.mod()
numpy.mod() 计算输入数组中相应元素的相除后的余数。 函数 numpy.remainder() 也产生相同的结果。
a = np.array([8, 9, 10])
b = np.array([10, 20, 30])
print('数组a:')
print(a)
print('\n')
print('数组b:')
print(b)
print('\n')
print('调用 mod() 函数:')
print(np.mod(a, b))
print('\n')
print('调用 remainder() 函数:')
print(np.remainder(a, b))
# 输出结果:
# 数组a:
# [ 8 9 10]
#
#
# 数组b:
# [10 20 30]
#
#
# 调用 mod() 函数:
# [ 8 9 10]
#
#
# 调用 remainder() 函数:
# [ 8 9 10]
本节内容非常简单,但是还是那句话,眼过千遍,不如手过一遍。