问题标签 [data-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 投票
1 回答
2207 浏览

objective-c - Objective-C 中的线性回归

我正在尝试实现一种将线拟合到 2D 中的一组点的方法。我编写了以下代码,它从两个数组(X,Y 坐标)中读取数据,并应使用最小二乘法计算最佳拟合线的参数。我使用了这里给出的公式: mathworld.wolfram

我得到这样的输出:

结果线根本不适合数据,尽管 corelationCoefficient 有时大于一,恕我直言,如果一切正常,则永远不会发生这种情况。

有人在我的实施中看到任何错误吗?

- 编辑 -

这是更正的代码,遵循 CRD 的提示。我用它来提取两个步骤之间水平面上采样的用户加速度的方向向量,以获得步骤方向。

这对我有用:

0 投票
1 回答
3663 浏览

matlab - 绘制3D线,matlab

我的问题很标准,但找不到解决方案。

我有 points=[x,y,z] 并想绘制最佳拟合线。

我正在使用下面给出的函数(和 Thanx Smith)

我有一个。所以方程可能是

dist 是最小值。与原点的距离。

现在我的问题是如何在 3D 中绘制最佳过滤线。

0 投票
4 回答
14599 浏览

python - 通过 Scipy 和 Numpy 使用 Python 将数据拟合到 ODE 系统

我在通过 Scipy 和 Numpy 将我的 MATLAB 代码翻译成 Python 时遇到了一些麻烦。我被困在如何为我的 ODE 系统找到最佳参数值(k0 和 k1)以适应我观察到的十个数据点。我目前对 k0 和 k1 有一个初步的猜测。在 MATLAB 中,我可以使用名为“fminsearch”的函数,该函数采用 ODE 系统、观察到的数据点和 ODE 系统的初始值。然后它将计算一对新的参数 k0 和 k1 将适合观察到的数据。我已经包含了我的代码,看看您是否可以帮助我实现某种“fminsearch”来找到适合我的数据的最佳参数值 k0 和 k1。我想将任何代码添加到我的 lsqtest.py 文件中。

我有三个 .py 文件 - ode.py、lsq.py 和 lsqtest.py

ode.py:

lsq.py:

lsqtest.py:

0 投票
1 回答
307 浏览

python - 将数据拟合到 ODE 系统 - 使用带有 Scipy/Numpy/Python 的 lambda 函数键入错误

运行代码时出现以下错误:

类型错误:lambda() 正好需要 4 个参数(给定 3 个)

这是我的代码 - 我的错误来自我试图实现 Scipy 优化算法的最后一行代码(我认为)fmin

0 投票
1 回答
540 浏览

python - 具有阈值函数的 fmin

我有一些我想用 fmin 函数拟合的实验数据。我已经将 fmin 与另一个样本一起使用,一切正常。

这次我想用一个函数来表示数据,比如:

t 是时间向量,c[0] 是阈值(多项式系数的 c[i]) (顺便说一下,数据可以用这个函数表示,因为我用它来生成数据示例!)

函数错误由下式给出:

p3=[10,250,0,0,0] 并且 T_out 是一个向量

拟合操作是:

该指令对于“经典”多项式函数非常有效,但对于 f3 函数(其中带有“if”),p3_min 没有像预期的那样优化。

我试图实现像 p[0]>0 这样的约束或增加迭代次数,但我无法获得预期值。

有没有人尝试过用“阈值”函数拟合数据?如果能得到一些帮助,我将不胜感激。

0 投票
1 回答
4162 浏览

matlab - 2d polynomial fitting to table data MATLAB

I am trying to use 2D polynomial fitting for my table data, my data format is exactly like the link below: http://www.mathworks.de/help/toolbox/curvefit/brx2ldg-1.html#bso46rp-1

I mean I have vector X with length n, Y with length m and m*n Matrix Z, I would like to fit 5 degree 2d polynomial to my data,

I am wondering that is there any syntax in MATLAB for solving this problem? like SFIT command in IDL, http://star.pst.qub.ac.uk/idl/SFIT.html

I have cftool and sftool, but it seems that they don't work for this purpose or most probably I don't know how to employ them.

and I know that there some m.file which people share in MATLAB Mathworks file exchange, please if you know one works properly, suggest me.

I'd appreciate any help and comment.

0 投票
1 回答
6178 浏览

python - scipy.optimize.leastsq 返回最佳猜测参数而不是新的最佳拟合

我想将洛伦兹峰拟合到一组数据 x 和 y,数据很好。OriginLab 等其他程序非常适合它,但我想用 python 自动拟合,所以我有以下基于http://mesa.ac.nz/?page_id=1800的代码

我遇到的问题是 scipy.optimize.leastsq 作为最适合我传递给它的初始猜测参数返回,基本上什么都不做。这是代码。

p 是初始猜测,best_parameters 是从 leastsq 返回的“最佳拟合”参数,但它们始终相同。

这是由 full_output=1 返回的(长数值数组已缩短但仍具有代表性)

谁能看到有什么问题?

0 投票
2 回答
134 浏览

python - 拟合多个分布

我有一种情况,两个或多个带有一些系数的 nd 数组应该(大致)加起来到第三个数组。

我正在寻找使前两个数组最近似的c1and 。我确信 scipy 中存在某种方法,但我不确定从哪里开始。是否有我应该开始的特定模块?c2array3

0 投票
2 回答
1993 浏览

matlab - 征费航班分布直方图 Matlab

我一直在四处寻找将 Levy Distributions 拟合到直方图的方法,但无济于事。我希望测试 Levy Flight 分布在数据上的表现,无论它是否真的适合我们的数据类型。由于我在 PDF 方面相当陌生,并且除了 matlab 中的 distfittool GUI 之外还安装了我自己的 PDF,所以我有点不知道我需要做什么才能正确地做到这一点。

所以目前,我的数据是一个 208x1 的向量,208 个点代表 208 个不同对象的不同速度。速度仅通过每次总距离计算。

现在,目前我采用了描述征费航班的函数: http ://reference.wolfram.com/mathematica/ref/LevyDistribution.html (Out[3])

我使用以下代码进行了尝试:

我完全清楚,我对 Levy 航班分布不熟悉是为什么我什至不确定这是否是用于分布的正确函数,也不是我需要传递给它以正确执行此操作的参数的根本原因。如果有人能给我更多的见解,我将不胜感激。

0 投票
2 回答
1108 浏览

c++ - 使用 C++ 中的最大似然法将 1000 个样本拟合到正态分布

我有5000个双打样本

样本 = {1.23, -4.67, 0.17, 1.25, 6.89, -2.03, ...}

并希望将数据拟合到参数分布,如 N(mu, sigma) 或广义学生 t(loc, scale, DoF)...

我已经有了这些分布 PDF_normal(mu, sigma)(x) 和 PDF_t(loc, scale, DoF)(x) 的 PDF,并且可以计算固定分布参数的 5000 个样本的 PDF 对数之和。

现在,我想使用一些 C++ 算法来解决非线性优化问题,以找到能够给出最大对数似然值的参数 (mu_max, sigma_max) 或 (loc_max, scale_max, DoF_max)。

用于统计计算的 R 项目正在通过以下方式解决 MASS 包中的问题:.. 使用 optim 执行对数似然的直接优化。估计的标准误差取自观察到的信息矩阵,通过数值近似计算。对于一维问题,使用 Nelder-Mead 方法,对于多维问题,使用 BFGS 方法...

不幸的是,我不能使用 R 解决方案,但必须在 Microsoft VS2010 C++ 中提出解决方案,我不想自己编写优化代码,也不想查看 R 源代码并为 C++ 重写它。 ..

有什么建议可以让我找到一个快速且经过良好测试的 C++ BFGS(或类似)实现吗?

Boost、Intel MKL 等有什么可用的吗?

谢谢你的帮助,马特