Python的numpy库使用

代码部分如下所示:

import numpy as np
import matplotlib.pyplot as plt

# # 1.基本初等函数
# 对数(括号里面为真数,外面为底数)
np.log()       # 计算自然对数,默认为e的底数
np.log10(10)       # 计算lg(以10为底)
np.log2(1)         # 计算以2为底对数

# 指数
np.exp(3)          # 计算e的3次方
np.e               # 输出e

# 圆周率
np.pi

# (反)三角函数
np.cos()
np.sin()
np.tan()
np.arccos()
np.arcsin()
np.arctan()

# 绝对值函数
np.abs()            # 计算绝对值
np.fabs()           # 计算非复数绝对值


# # 2.作图
x = np.linspace(0, 10, 100)  # 确定自变量取值范围
y = 1/(1+np.exp(2**(x**2)))
plt.plot(x, y, color='green', linewidth=2)
plt.show()

# # 3.矩阵创建
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])  # 直接创建矩阵
b = np.array([[2, 1, 3], [3, 1, 2], [3, 4, 2]])
a = np.mat("1 2 3;4 5 6;7 8 9")
np.asarray(a)               # 复制矩阵
np.ones(10)                 # 创建单位矩阵
np.ones_like([[1, 1, 3], [9, 4, 7]])   # 创建一个2行3列的单位矩阵
np.zeros(15)                # 创建0矩阵
np.zeros_like(a)            # 创建像a的零矩阵
np.empty(7)                 # 为随机产生的数据
np.eye(10)                  # 生成单位矩阵
np.identity(3)              # 生成单位矩阵
np.arange(1000)             # 生成一维的num-1单位矩阵
np.arange(1, 10)            # 生成一个从begin到end-1的一维矩阵
np.arange(0, 100, 20)       # 生成公差为最后一位数以第一个数为首项的等差数列

# # 4.矩阵的一些用法
#a,b为数组,而不是常数
np.where(4 < 13, a, b)      # 前者为条件,后者为选择输出项
np.in1d(a,[2,0,53])         # 检查ndarray中的元素是否等于后面后面数组中的一个,返回布尔型
np.diag(a)                  # 以一维数组的形式返回对角线的值
np.diag([1, 3, 5, 9, 0, 5, 3, 6, 9])  # 将一维数组转化为方阵,非对角元素为0
np.trace(a)                 # 计算主对角线元素的和,左上角到右下角
np.sort(a)                  # 每一行排序,返回副本数组
np.unique([[2,3,5],[7,8,5],[8,3,1]])  # 返回数组中的元素,排除重复元素,再进行排序
np.intersect1d(a,b)         # 返回数组元素的交集并排序
np.union1d(a,b)             # 返回二者的并集在排序
np.setdiff1d([[1,3,500],[594,298,123]], [[4,90,34],[5,6,790]])  # 去除重复元素只与第一个数组有关,然后进行排序
np.setdiff1d(b,a)
np.setxor1d(a,b)            # 去除两个数组的交叉项然后进行排序
np.setxor1d([1, 2, 2], [7, 8, 1])
np.abs([[1, -5, 5], [4, -9, 0]])  # 数组绝对秩
np.fabs(a)                  # 计算数组绝对值,非复数
np.mean(a)                  # 计算平均值
np.exp(a)                   # 对数组各项e次幂
np.log(a)                   # 对数组各项取对数
np.sign([1,7,0,-67])        # 计算正负号正1负-1零0
np.ceil([1.2,7.1,0])        # 计算大于该值的最小整数并把小数点加在最后
np.floor([-1.4,0,3,np.exp(10)])  # 计算小于该书的最小整数
np.rint([1.2,-1.3,9.5])     # 四舍五入到最近的整数
np.modf([1.9,3.7,9.1])      # 将数组的小鼠和整数部分用两个独立的数组行式返回
np.logical_not(a)           # 计算个元素not x 的真值,即-ndarray

# # 5.判断
np.isnan(a)            # 返回一个判断是否是NaN的bool型数组
np.isfinite(a)         # 返回一个判断是否是有穷的bool数组
np.isinf(a)            # 返回一个判断是否是无穷的bool数组


# # 7.加减乘除、开方、平方
np.add(a, b)            # 矩阵加法
np.subtract(a, b)       # 矩阵的减法
np.multiply(a, b)       # 矩阵乘法(对应位置元素相乘)
np.divide(a, b)         # 矩阵除法(对应位置元素相除)
np.sqrt(a)              # 对数组各项开方
np.square(a)            # 对数组各项平方

# # 8.矩阵运算
np.floor_divide(a, b)   # 矩阵除法丢弃余数
np.power(a, b)          # 矩阵次方
np.mod(a, b)            # 计算两数组对应位置元素a/b的余数
np.dot(a, b)            # 计算两个矩阵的内积
np.maximum(a, b)        # 两个形状相同的矩阵对应位置元素取大的重新构成矩阵
np.minimum(a, b)        # 两个形状相同的矩阵对应位置元素取小的重新构成矩阵

持续更新中,希望对你们有所帮助!!!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值