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))  # 去重, 并升序返回
相关推荐
方也_arkling2 小时前
【Java-Day08】static / final / 枚举
java·开发语言
风吹夏回2 小时前
Python 全局异常处理:从“满屏 try-except”到优雅兜底
开发语言·python
Chengbei113 小时前
一站式源码安全检测工具、云安全 / APP / 小程序源码敏感信息递归多层目录扫描AK、JWT、手机号、身份证等敏感信息
java·开发语言·安全·web安全·网络安全·系统安全·安全架构
llz_1123 小时前
web-第一次课后作业
java·开发语言·idea
小熊Coding3 小时前
Python爬取当当网二手图书项目实战!
开发语言·爬虫·python·beautifulsoup·requests·二手图书
秋93 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本3 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
xiaoshuaishuai83 小时前
C# 内存管理与资源泄漏
开发语言·c#
lsx2024064 小时前
SVN 检出操作
开发语言
田里的水稻4 小时前
OE_ubuntu26.04与宿主机之间复制粘贴内容
人工智能·python·机器人