【五分钟】熟练使用np.interp函数函数(干货!!!)

引言

np.interp函数可对一维数组进行线性插值。具体来说,如果已知xp和yp,并且xp和yp具有确定的对应关系(比如yp=sin(xp)),那么对于新的一维数组x,可通过np.interp函数得到数组y,y是基于 xp和yp的映射关系 通过【线性插值】得到的。

代码

python 复制代码
import numpy as np

# 初始化一维数组xp
xp = np.linspace(0, 10, 20)  # 从[0,10]这个范围等间隔取20个值
# 基于正弦函数对【离散】输入xp生成数组fp
fp = np.sin(xp) # fp = sin(xp)

# 生成一批新的输入
x = np.linspace(0, 10, 100) # 从[0,10]这个范围等间隔取100个值
# 基于离散数组xp和fp的映射关系(正弦函数),对新的输入数组x预测对应的输出y(线性插值)
y = np.interp(x, xp, fp)

# 绘制图像
import matplotlib.pyplot as plt
plt.axis("off")
plt.plot(xp, fp, 'o', markersize=10) # 原数组 xp fp均已知
plt.plot(x, y, 's', markersize=3) # 新数组 x已知,y是基于 xp与fp的映射关系 通过【线性插值】得到
plt.show()

运行结果

其中,原数组对(xp, yp)用蓝色圆点标记。很明显,(xp, yp)就是sin函数的离散采样点。而新数组(x, y)用橙色正方形标记。可以从上图红色框部分看出,y是基于xp与fp的映射关系 通过【线性插值】得到的。

结束语

如果本博文对你有所帮助,可以点个赞/收藏支持一下,如果能够持续关注,小编感激不尽~

如果有相关需求/问题需要小编帮助,欢迎私信~

小编会坚持创作,持续优化博文质量,给读者带来更好de阅读体验~

相关推荐
啊阿狸不会拉杆19 小时前
《机器学习导论》第 10 章-线性判别式
人工智能·python·算法·机器学习·numpy·lda·线性判别式
brave and determined3 天前
CANN教程:NPU原生NumPy接口asnumpy详解引言
numpy
啊阿狸不会拉杆3 天前
《机器学习导论》第 5 章-多元方法
人工智能·python·算法·机器学习·numpy·matplotlib·多元方法
铁手飞鹰4 天前
[深度学习]常用的库与操作
人工智能·pytorch·python·深度学习·numpy·scikit-learn·matplotlib
啊阿狸不会拉杆4 天前
《机器学习导论》第3章 -贝叶斯决策理论
人工智能·python·算法·机器学习·numpy·深度优先·贝叶斯决策理论
林深现海4 天前
【刘二大人】PyTorch深度学习实践笔记 —— 第四集:反向传播(凝练版)
pytorch·python·numpy
断眉的派大星5 天前
NumPy库完全解析(从基础到进阶,附实战示例)
numpy
啊阿狸不会拉杆5 天前
《机器学习导论》第 1 章 - 引言
人工智能·python·算法·机器学习·ai·numpy·matplotlib
Dfreedom.5 天前
详解四大格式(PIL/OpenCV/NumPy/PyTorch)的转换原理与场景选择
图像处理·人工智能·pytorch·opencv·numpy·pillow
不懒不懒5 天前
【机器学习:下采样 VS 过采样——逻辑回归在信用卡欺诈检测中的实践】
python·numpy·scikit-learn·matplotlib·pip·futurewarning