【完】Numpy学习笔记

【numpy笔记_9】数学运算和函数

2023-02-28  本文已影响0人  fakeProgramer

激动的心,颤抖的手,终于讲到函数了。

到这说明numpy这项工具被你掌握了大半。

掌握了前面的array对象和操作,数学运算、函数和统计是非常好理解的东西,无非调用numpy封装好的工具而已。

废话不多说,开始今天的内容。


数学运算

常用的数学运算有加减乘除,取绝对值,取倒数,幂运算,求和等等。

下面整理了一些常用的数学运算方法:

功能 方法 参数 说明
np.add() arr1,arr2 arr1 + arr2
np.subtract() arr1,arr2 arr1 - arr2
np.multiply() arr1,arr2 arr1 * arr2
np.divide() arr1,arr2 arr1 / arr2
求倒数 np.reciprocal() args 1/args(args的倒数)
求余数 np.mod() args1,args2 args1 % args2(args1除以args2后的余数)
求绝对值 np.absolute() args /args/(args的绝对值)
幂运算 np.power() args1,args2 args1 ^ args2(args1的args2次方)
import numpy as np
arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 + arr2: ', np.add(arr1, arr2))   # 求和,等同于使用 +(arr1 + arr2)
# 运算结果:
arr1 + arr2:  [ 3  7 11]

arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 - arr2: ', np.subtract(arr1, arr2))   # 求差,等同于使用 -(arr1 - arr2)
# 运算结果:
arr1 - arr2:  [-1 -1 -1]

arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 * arr2: ', np.multiply(arr1, arr2))   # 求乘,等同于使用 *(arr1 * arr2)
# 运算结果:
arr1 * arr2:  [ 2 12 30]

arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 / arr2: ', np.divide(arr1, arr2))   # 求商,等同于使用 /(arr1 / arr2)
# 运算结果:
arr1 / arr2:  [0.5        0.75       0.83333333]

arr1 = np.array([1, 3, 5],dtype='float64')
print('arr1计算倒数: ', np.reciprocal(arr1))   # 求倒数,需指定数据类型以保证精度,等同于(1 / arr1)
arr2 = np.array([2, 4, 6])
# 运算结果:
arr1计算倒数:  [1.         0.33333333 0.2       ]

arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 % arr2: ', np.mod(arr2, arr1))   # 求余数
# 运算结果:
arr1 % arr2:  [0 1 1]

arr1 = np.array([1, -3, 5])
print('arr1的绝对值: ', np.absolute(arr1))   # 求绝对值
# 运算结果:
arr1的绝对值:  [1 3 5]

arr1 = np.array([1, 3, 5])
arr2 = np.array([2, 4, 6])
print('arr1 ^ arr2: ', np.power(arr2, arr1))   # 求次方
# 运算结果:
arr1 ^ arr2:  [   2   64 7776]

当然,numpy的科学计算远不止这些,还可以求对数、积分、聚合计算等等。这里只列举了一些平时用的较多的方法,没必要都背下来,需要再查也来得及

而且,numpy的计算方式很灵活,比如上面的加减乘除或求倒、求幂等等,有多种计算方式,要懂得融会贯通,才能简捷高效地达到运算效果。

数学函数

高深的数学函数平时应用场景非常少(也可能我的层次没达到=。=),这里只列举下三角函数的计算方法,其他需要了可以再查:

功能 方法 参数 说明
π值 np.pi 调用常数,π值 3.14159265...
sin函数 np.sin() args 对数组的元素分别计算sin函数
cos函数 np.cos() args 对数组的元素分别计算cos函数
tan函数 np.tan() args 对数组的元素分别计算tan函数
舍入函数 np.around() args, number 对args取number位
import numpy as np

pi = np.pi
print('π值:', pi)
# 运算结果:
π值: 3.141592653589793

arr1 = np.array([0,30,60,90])
print('给定一组角度arr1,计算其sin值为:', np.sin(arr1 * np.pi / 180))   # 角度 * π / 180,计算sin
print('给定一组角度arr1,计算其cos值为:', np.cos(arr1 * np.pi / 180))   # 角度 * π / 180,计算cos
print('给定一组角度arr1,计算其tan值为:', np.tan(arr1 * np.pi / 180))   # 角度 * π / 180,计算tan
# 运算结果:
给定一组角度arr1,计算其sin值为: [0.        0.5       0.8660254 1.       ]
给定一组角度arr1,计算其cos值为: [1.00000000e+00 8.66025404e-01 5.00000000e-01 6.12323400e-17]
给定一组角度arr1,计算其tan值为: [0.00000000e+00 5.77350269e-01 1.73205081e+00 1.63312394e+16]

arr1 = np.array([1,3,5,7])
print('对arr1除以4,取小数点后两位:', np.around(arr1 / 4 ,2))
# 运算结果:
对arr1除以4,取小数点后两位: [0.25 0.75 1.25 1.75]

今天的内容理解起来轻松了很多,后面会越来越轻松。

上一篇下一篇

猜你喜欢

热点阅读