问题标签 [goodness-of-fit]

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 投票
0 回答
43 浏览

matlab - 从给定的曲线和数据点计算(调整)R^2

我想通过使用 Matlab 计算(理想情况下,调整后的)R^2 来评估给定曲线与一些数据点的拟合。我可以在网上找到的所有教程都解释了当曲线直接从数据集中获得时如何执行此操作,但在我的情况下,曲线是独立确定的,我需要计算 R^2 作为拟合的度量新数据集,我将其用作测试。Matlab中是否有任何例程可以做到这一点?

0 投票
1 回答
194 浏览

r - 如何使用 goodfit 检索卡方拟合优度检验的结果?

我正在尝试在 R 中编写一个软件,通过对数据(关于所述系列)执行卡方检验并找到最佳卡方值来找到最适合一组数据的分布系列。

但是,在使用 goodfit 函数时,似乎检索卡方统计量的唯一方法是运行该函数并使用 summary(gf) 命令。这只会产生人类可读的输出,我需要一些可以以 gf$chisqvalue 的形式绘制的东西,以便我可以将它与我正在运行的其他测试的结果进行比较。有没有办法将此统计信息作为变量检索?

0 投票
1 回答
1514 浏览

r - {Methcomp} – 戴明/正交回归 – 拟合优度 + 置信区间

这个帖子后面的一个问题。我有以下数据:

  • x1,疾病症状
  • y1,另一种疾病症状

我用戴明回归拟合 x1/y1 数据,其中 vr(或 sdr)选项设置为 1。换句话说,回归是总最小二乘回归,即正交回归。有关图表,请参阅以前的帖子。

我想知道 x1 对预测 y1 有多大帮助:

  • 通常,我会选择 R 平方,但它似乎不相关;尽管另一位数学家告诉我他认为 R 平方可能是合适的。这个页面建议计算皮尔逊积矩相关系数,这是 RI 相信的吗?
  • 部分相关,可能存在容差区间。我可以用 R 计算它({tolerance} 包或帖子中显示的代码),但这并不是我正在寻找的。

有人知道如何使用 R 计算戴明回归的拟合优度吗?我查看了 MetchComp pdf,但找不到它(虽然可能错过了)。

编辑:遵循 Gaurav 关于置信区间的答案:R 代码

首先:参数的置信区间

其次:预测值的置信区间

编辑 2 主题移至交叉验证: https ://stats.stackexchange.com/questions/167907/deming-orthogonal-regression-measuring-goodness-of-fit

0 投票
0 回答
1184 浏览

python - 正态分布的拟合优度

我正在尝试使用基于卡方的标准来估计误差正态分布的拟合优度。

具体来说,我有一个样本和它的估计值。从那里我计算近似误差。我现在将这些误差用作新的假设正态分布的观测值 O,其中预期的理论观测值 E 现在是这些误差的平均值或 0(您希望估计是完美的)。

使用https://en.wikipedia.org/wiki/Goodness_of_fit卡方统计量应该等于 1 以进行精确拟合,这是我事先不期望的。

我想要近似拟合,我得到的是等于 ~1.3 - 1.5 的卡方统计量。在小样本上,这些有时会变成 2-3。

这被认为是可以忍受的合身吗?

我在python中实现了这个,所以代码是

或者

其中 N 是观察的数量(len(error))和 n = 2(我试图拟合的参数数量,它们是均值和 var)。

它工作得相当好(我认为)只有 6-8 个观察值,这很奇怪,因为您需要足够的统计数据来近似高斯(至少 10 个样本等......) - 我希望 chi-statistics 的值更高.. .

数据样本:

从这里我计算平均值和 var 并应用上述过程(我的真实数据是一个 pd.DF,其中每列包含一个如上所述的系列,因此 .sum(0)。可以在使用其他数据类型时与 sum() 一起使用)

根据@tom 的评论:我使用的数据是数字的而不是分类的,因此使用 scipy.stats.chisquare 是不可能的。看来我需要自己计算 chi-statistics 和 p-values,除非有办法直接从 python 中做到这一点?

先感谢您。

0 投票
1 回答
161 浏览

python - 如何在绘制拟合优度的差异图时计算模拟值?

在MCMC使用pymc获得最佳拟合值后,我试图制作差异图以测试拟合优度。我的代码如下:

到目前为止一切顺利,并给出了以下情节:使用 MCMC 的最佳拟合图

现在我想使用https://pymc-devs.github.io/pymc/modelchecking.html中第 7.3 节中描述的方法测试拟合优度。为此,我必须先找到 f_sim,所以我在上面几行之后编写了以下代码:

这会给出错误消息AttributeError: 'Normal' object has no attribute 'trace'。我试图在做差异图之前使用 gof_plot 。由于函数的高斯性质,我不认为使用其他分布代替 Normal 是一个好主意。如果有人能让我知道我做错了什么,我将不胜感激。pymc 中的正态分布也没有 Normal_expval 来获得预期值。还有其他方法可以计算 f_exp 吗?谢谢。

0 投票
5 回答
19845 浏览

python - `scikit-learn` 的 `r2_score` 与 R^2 计算显着不匹配

问题

r2_score为什么scikit-learn 中的函数与Wikipedia 中描述的确定系数公式之间存在显着差异?哪个是正确的?


语境

我正在使用 Python 3.5 来预测线性和二次模型,我正在尝试的拟合优度度量之一是 . r2_score但是,在测试时,度量标准scikit-learn和维基百科中提供的计算之间存在显着差异。


代码

我在这里提供我的代码作为参考,它计算上面链接的维基百科页面中的示例。

很明显,scipy计算值是-3.8699999999999992,而维基百科中的参考值是0.998

谢谢!

更新:这与关于如何在 scikit-learn 中计算 R^2 的问题不同,因为我试图理解并澄清的是两个结果之间的差异。该问题表明 scikit 中使用的公式与维基百科的相同,不应导致不同的值。

更新#2:事实证明我在阅读维基百科文章的示例时犯了一个错误。下面的答案和评论提到我提供的示例是针对示例中 (x, y) 值的线性最小二乘拟合。为此,维基百科文章中的答案是正确的。为此,提供的 R^2 值为 0.998。对于两个向量之间的 R^2,scikit 的答案也是正确的。非常感谢你的帮助!

0 投票
0 回答
721 浏览

r - Hosmer-Lemeshow 拟合优度 (GOF) 检验

我想将 HL GoF 测试应用于我的生存分析。

测试说明可以在这里找到:

获取一些现成的数据,我们可以绘制具有 95% CI 的 cdf

但是我们想运行一个 HL GoF 测试来评估 Weibull 分布是否不正确。

因此:

我尝试,但不正确。有人可以指导我找到正确的拟合概率吗,它们需要与观察的长度相同

0 投票
1 回答
393 浏览

python - 如何量化模型预测是否与 Python 中的预期值接近?

我有两组数据,其中 X 是观察值,Y 是预期值。我正在尝试量化与 Python 的拟合优度。人们经常计算数据集并根据这些值决定哪个更好,哪个是错误的。我想要帮助我确定哪个数据集观察到的值接近预期值的值。我尝试使用 Python 进行测试,但是否有任何其他测试可以帮助确定最适合的测试。

代码

更新

使用更新后的代码,获得以下输出:

为什么从 scikit 和 scipy 获得的 R2 值不同?

0 投票
1 回答
491 浏览

matlab - 将 MATLAB 的 chi2gof 与非标准用户指定的 PDF 一起使用

我想使用 MATLABchi2gof执行卡方拟合优度检验。我的问题是我假设的(即理论上的)分布不是 MATLAB 中的标准内置概率分布之一。我想要的分布的具体形式是:

其中ab是常数。必须有一种方法可以chi2gof用于任意 PDF?我已经完成了详尽的谷歌搜索,但空手而归。

0 投票
1 回答
248 浏览

r - 如何在 R 中按组从拟合模型中获取 gofstat

我有一个包含数千个独特测试 (TestNum) 及其相关响应 (Response) 的大型数据集,响应的长度在测试中有所不同。测试基于某些标准被丢弃,因此 TestNum 值缺乏序列。这里有一个简化的例子:

我正在为每个 TestNum 拟合 lnorm 分布并提取系数

我想测试其他分布,但需要每个分布的拟合优度统计(gofstat;例如“chi”chisqpvalue”、“cvm”、“ad”、“ks”、“aic”、“bic”) TestNum 的拟合曲线。我可以用下面的代码得到“aic”和“bic”,但不能得到其余的统计数据。

任何建议,将不胜感激!