numpy——数学运算

一、标量------矢量

复制代码
import numpy as np

a = 3.14
b = np.array([[9, 5], [2, 7]])

print(a)
print(b)

# ---------- 四则运算 ----------
print(a + b)  # np.add
print(a - b)  # np.subtract
print(a * b)  # np.multiply
print(a / b)  # np.divide

二、矢量------矢量

复制代码
import numpy as np

a = np.array([[3, 1], [4, 1]])
b = np.array([[9, 5], [2, 7]])

print(a)
print(b)

# ---------- 四则运算 ----------
print(a + b)
print(a - b)
print(a * b)  # 注意: 这不是矩阵的乘法
print(a / b)

三、广播

复制代码
import numpy as np

a = np.array([3, 1])
b = np.array([[9, 5], [2, 7]])

# print(a)
# print(a.shape)
# print(b)
# print(b.shape)

# ---------- 广播 ----------
# 当矩阵维度不同时, 可以进行广播操作
print(a + b)
print(a - b)
print(a * b)
print(a / b)

四、矢量相乘

复制代码
import numpy as np

a = np.array([[9, 5], [2, 7]])
b = np.array([[3, 1, 4], [1, 5, 9]])

print(a)
print(b)

# ---------- 矩阵相乘(前列=后行) ----------
print(np.dot(a, b))

五、常见计算

复制代码
import numpy as np

t = np.random.uniform(0, 10, size=(3, 4))
print(t)

print(np.ceil(t))  # 向上取整
print(np.floor(t))  # 向下取整
print(np.rint(t))  # 四拾伍入
print(np.isnan(t))  # 判空为 NAN(Not A Number)
print(np.where(t > 5, 1, 0))  # 三元运算: 1 if t > 5 else 0   #数据预处理

六、统计函数

复制代码
import numpy as np

# 姓名  数学  语文  总分
# 小明   63   92   155
# 小红   89   76   165
# 总分   152  168


t = np.array([
    [63, 92],
    [89, 76],
])

# # ---------- 求和 ----------
# print(np.sum(t, axis=1))  # 按行求和
# print(np.sum(t, axis=0))  # 按列求和

# ---------- 平均值 ----------
print(np.mean(t, axis=1))  # 按行求平均值
print(np.average(t, axis=1))  # 按行求平均值
#
print(np.mean(t, axis=0))  # 按列求平均值
print(np.average(t, axis=0))  # 按列求平均值
#
# ---------- 最大与最小 ----------
print(np.max(t, axis=1))  # 按行求最大值
print(np.max(t, axis=0))  # 按列求最大值

print(np.min(t, axis=1))  # 按行求最小值
print(np.min(t, axis=0))  # 按列求最小值
#
# ---------- 标准差与方差 ----------
print(np.std(t, axis=1))  # 按行求标准差
print(np.var(t, axis=1))  # 按行求方差
#
# # ---------- 最值的索引 ----------
print(np.argmax(t, axis=1))  # 按行求最大值的索引
print(np.argmin(t, axis=1))  # 按行求最小值的索引
#
# ---------- 累计操作 ----------
print(np.cumsum(t, axis=1))  # 累加和: 当前元素与前一个元素的和
print(np.cumprod(t, axis=1))  # 累乘积: 当前元素与前一个元素的积

七、判断函数

复制代码
import numpy as np

t = np.array([[9,5], [2, 7]])


print(t.any())  # 至少有一个元素满足指定条件, 返回True   cyc:没空的
print(t.all())  # 所有的元素满足指定条件, 返回True

t = np.array([[3, 1], [4, 1]])
print(np.unique(t))  # 去重, 并升序返回
相关推荐
昵称画2 小时前
交接班记录电子化:三班之间的信息不漏
开发语言·数据库·人工智能·低代码·php
“AI国潮设计-小江”2 小时前
【AIGC实战】Python+SDXL批量生成“潮汕英歌舞不倒翁”IP | 角色一致性与多场景融合方案,附完整代码
开发语言·人工智能·python·prompt·aigc
传奇开心果编程2 小时前
【Rust入门练中学】第6课:结构体与方法
开发语言·rust·结构体·编程语言理论·结构体方法·编程通用语言
Linux_cy2 小时前
服务器管理工具哪个好用?我用了七八个
运维·服务器·javascript·python·ssh·面板·gmssh
MoRanzhi12032 小时前
第6篇(下)· 使用 PyQt5 实现 2048 高性能计算版:统一运行控制与跨模式安全交接
python·pyqt·进程管理·状态机·软件架构·并发控制·数据一致性
code tsunami3 小时前
【无标题】
开发语言·python
CodeGL3 小时前
10、Python基础之进程和线程
开发语言·python
TechWayfarer4 小时前
PHP漏洞被利用,怎么揪出攻击IP?
开发语言·python·tcp/ip·网络安全·php
2601_967980115 小时前
Python列表操作方法详解
python·数据类型·修改·列表操作·功能汇总
卡卡~~5 小时前
“101计划”核心课程实践教材《数据实验结构指导-C++语言版》题目集
开发语言·c++·学习·算法