拟合样条方法/计算?大家好,
目前我手动分析数据并生成样条线(全部手动完成)。我正在尝试编写一个最终可以在公司服务器上运行的python代码。
python的三次样条函数与我通常在jmp中生成的样条线不匹配(分析-->拟合Y与X-->灵活-->拟合样条线-->其他-->指定平滑度=0.1检查标准化x(红色)
当我用 Python 生成(来自 scipy 的三次样条)时,我越来越接近图中所示的红色曲线。
我在 python 的三次样条函数中找不到 lambda (或等效的)参数,也无法标准化数据。我确实尝试过标准化
(x_i-Mean(x))/Std dev (x)) 我自己的数据,但曲线变得越来越奇怪。
当我们标准化数据时,可以帮助指出生成这些样条线的确切方法/计算是什么。 我看过一些帖子指出这是三次样条,但我没有解释当我们使用标准化选项时如何处理数据和生成样条。
有点牵强,不确定这是否是正确的论坛,有人知道另一个可以生成匹配样条的替代 python 函数吗?
谢谢你!
回复:拟合样条方法/计算?样条线有很多种,每种样条线通常有多个方法或实现。 如果您要编写自己的代码,我建议您搜索有关样条模型的大量文献。 例如,这个章节克莱姆森大学高级计算机科学课程提供了计算机图形学中使用的样条线的概述。 您还可以检查您喜欢的样条模型的开源代码(例如 Python 或 R 中提供的代码),以了解如何编写此类代码。
如果您想在 Bivariate 平台中实现您自己的三次样条插值函数版本,请参阅以下参考资料:
- 赖因施,CH (1967)。 “通过样条函数进行平滑。”数值数学10:177-183。
- 尤班克,RL (1999)。 非参数回归和样条平滑。 第二版。佛罗里达州博卡拉顿:CRC。
回复:拟合样条方法/计算?我希望,我可以编写一个代码来使用自己的代码绘制它,而不是使用 Python 库函数。 是否有其他文档可供使用?
谢谢你!
回复:拟合样条方法/计算?我不明白理解 JMP 平滑器将如何帮助您解决 Python 库函数的问题。
Scipy.org在线文档表示可选的BC_类型论据中的scipy.interpolate。三次样条( X , y ,轴=0 , bc_type='非结' ,推断=无) 称呼用于控制样条模型的构造。 没有与可用于控制拟合的 JMP lambda 参数相对应的参数。