问题标签 [curve-fitting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9604 浏览

matlab - 在 Matlab 中拟合二维数据

您如何将 ln(x^2) + 3y 等 2d 曲线拟合到 mxn 数组?

更新

我的意思是我有 mxn 数组并希望用 2D 曲线拟合它。很抱歉造成混乱。

0 投票
2 回答
2108 浏览

java - java峰值拟合库

有谁知道Java的任何峰值拟合库?

我想给它一个数据数组,它告诉我峰值的位置。

例如对于这个数据:

x, y
-5, 0.875333026
-4, 0.885868909
-3, 0.895851362
-2, 0.903971085
-1, 0.908274124
0, 0.907117054
1, 0.901894046
2, 0.894918547
3, 0.887651936
4, 0.880114302
5, 0.872150014

它会说峰值在(大约)-0.75

我可能只想适合一个高斯,或者一个分裂的高斯......

.

我已将其标记为curve-fitting、不peak-fittingpeak-finding因为我没有足够的声誉来制作新标签...

编辑:我更喜欢 Apache(或兼容的)许可代码......

0 投票
3 回答
3364 浏览

algorithm - 展开一个数组

我有一个形成曲线的样本向量。让我们假设其中有 1000 个点。如果我想将其拉伸以填充 1500 个点,那么给出体面结果的最简单算法是什么?我正在寻找只有几行 C/C++ 的东西。

我总是想增加向量的大小,新向量的大小可以是当前向量大小的 1.1 倍到 50 倍。

谢谢!

0 投票
7 回答
360284 浏览

python - 如何在 Python 中进行指数和对数曲线拟合?我发现只有多项式拟合

我有一组数据,我想比较哪一行描述得最好(不同阶的多项式,指数或对数)。

我使用 Python 和 Numpy,对于多项式拟合,有一个函数polyfit()。但是我发现没有这样的函数用于指数和对数拟合。

有吗?或者如何以其他方式解决它?

0 投票
8 回答
271015 浏览

r - 如何在 R 中为我的数据拟合平滑曲线?

我正在尝试在R. 我有以下简单的玩具数据:

现在,当我使用标准命令绘制它时,它看起来很颠簸和前卫,当然:

如何使曲线平滑,以便使用估计值对 3 个边缘进行舍入?我知道有很多方法可以拟合平滑曲线,但我不确定哪种方法最适合这种类型的曲线以及如何将其写入R.

0 投票
3 回答
1593 浏览

algorithm - 幂函数拟合

我想将幂函数拟合到数据集。我正在使用这种方法:http

://mathworld.wolfram.com/LeastSquaresFittingPowerLaw.html 但结果不可接受:b = -0,001901, a = 7,26



我的数据集:

这种方法是不够的,还是我犯了一个错误?有没有更好的解决方案来做到这一点?

0 投票
5 回答
154846 浏览

r - 将多项式模型拟合到 R 中的数据

我已经阅读了这个问题的答案,它们很有帮助,但我需要帮助。

我在 R 中有一个示例数据集,如下所示:

我想为这些数据拟合一个模型,以便y = f(x). 我希望它是一个三阶多项式模型。

我怎么能在 R 中做到这一点?

此外,R 可以帮助我找到最合适的模型吗?

0 投票
2 回答
2837 浏览

java - 在 Java 中,是否存在用于插入非均匀分布的时间序列数据的实现?

我有一些 matlab 代码,它需要及时均匀分布的时间序列数据来产生答案。读取数据文件的驱动程序matlab代码在读取文件后也会对数据运行interp1(x,y,xi,'cubic'),因为数据在时间上不是均匀分布的。

现在我必须将此过程移植到 Java 以添加到一些生产过程中。matlab 版本不适合大量数据文件,不能在生产中使用。

我的实际问题是在哪里可以找到一个已经实现 interp1 'cubic' 方法的 Java 库,以便在将数据读入进程时使用?

根据 MA​​TLAB 文档,“cubic”与分段三次 Hermite 插值多项式(pchip) 插值相同。“样条曲线”会产生不可接受的结果。我已经看过Apache commons-mathJAMA

0 投票
1 回答
2642 浏览

python - Scipy optimize.curve_fit 有时不会收敛

我正在尝试使用 numpy.optimize.curve_fit 来估计开/关序列的频率和相位。这是我正在使用的代码:

这行得通。但是在某些行上,即使它们看起来非常好,它也失败了。失败行示例:

错误是:

RuntimeError:未找到最佳参数:平方和的实际和预测相对减少最多为 0.000000,两次连续迭代之间的相对误差最多为 0.000000

这很少告诉我发生了什么。快速测试表明,改变 p0 中的参数将导致该行成功......而其他行失败。这是为什么?

0 投票
2 回答
900 浏览

math - 从运行时间确定时间复杂度的最简单方法

假设我正在尝试分析一种算法,而我所能做的就是使用不同的输入运行它。我可以构建一组点 (x,y) 作为(样本大小,运行时间)。我想将算法动态分类为复杂性类(线性、二次、指数、对数等)。理想情况下,我可以给出一个或多或少近似于行为的方程。我只是不确定最好的方法是什么。

对于任何次数多项式,我可以创建回归曲线并提出一些适应度测量,但我真的不知道如何为任何非多项式函数做到这一点。这更难,因为我以前不知道我应该尝试适合什么形状。

这可能更像是一个数学问题而不是编程问题,但这对我来说非常有趣。我不是数学家,所以可能有一种更简单的既定方法可以从一组我不知道的点中得到一个合理的函数。有没有人有任何想法来解决这样的问题?是否有 C# 的数字库可以帮助我处理数字?