python - Python插值:方法的精度?
问题描述
Python 插值有 3 种支持的方法:
支持“线性”和“最近”,以及“<strong>splinef2d”。“splinef2d”仅支持二维数据。
在Wikiversity中,它被解释为多项式插值,我认为应该比线性更精确......
所以这里有两个问题:
- splinef2d 是什么?这是wikiversity链接之一?
- 三种可用方法中哪一种在插值中更精确?最近的,双线性或样条线2d?
解决方案
这需要更多的挖掘scipy
。该splinef2d
方法本质上是将您的数据拟合到表面。您需要进一步探索的方法是scipy.interpolate.bisplrep。这包含了 FITPACK 的surffit子程序。据我所知,变量的类型是real
. 使用默认编译器设置,这意味着它real(kind=8)
因此您正在查看double
精度。这预计会具有传染性,因此 python 也处理相同的精度。
您现在可以对QHull重复该练习,以获取有关 LinearND 插值的详细信息。根据我从他们的 git repo 中看到的,它似乎是double
精确的。
在 python 方面,变量被声明float
并且文档说:
在运行 Python 的典型机器上,有 53 位精度可用于 Python 浮点数
关于包装函数的精度,默认情况下 pythonfloat
具有双精度。看到这个答案。
推荐阅读
- c++ - 本书示例在类声明中使用“显式”关键字。无效吗?
- python - 将 Opencv 安装到 Anaconda 的问题
- c++ - 时间执行悖论
- swift - 如何将 GMT 日期转换为系统日期格式?
- image - 如何在spring boot中将图像上传到classpath目录?
- google-apps-script - 将文件上传到电子表格显示“UiApp 已被弃用。请改用 HtmlServices”
- xquery - 特定路径的不同值组合
- r - R v 3.6.1 中的 lmer 错误和预测函数/从给定自变量的 lmer 模型中获取置信区间
- php - 将复选框值有条件地添加到 PHP MySQLi 查询及其相关 OR 中的最佳方法是什么?
- javascript - 如何在 Electron 应用中启用 Chromium 触摸手势?