问题标签 [fitdistrplus]

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 回答
3545 浏览

r - 如何排除 NA?(fitdist 函数)

我有 100x2 数据框 DFN。在列 DFN$Lret 上运行fitdist会给出错误消息“函数 mle 无法估计参数,错误代码为 100”。我认为原因是最后一行包含一个 NA。因此我运行fitdist排除 NA,现在我得到错误“数据必须是长度大于 1 的数字向量”。关于如何解决这个问题的任何想法?非常感谢。

请注意,如果消除包含 NA 的最后一行,则上述代码可以正常工作。fitdist如果可以避免,我宁愿不必在运行前消除最后一行。

编辑/更新:用 NA 消除最后一行确实解决了问题,但我现在无法始终如一地重现该问题(即在消除最后一行后成功运行代码几次,但并非总是如此)。我试图理解为什么。我尝试使用 25x2 数据框、100x2 和 300x2 以及矢量,结果相似。曾认为数据框或向量的大小可能是问题的一部分,因此进行了不同大小的试验。

0 投票
1 回答
2742 浏览

r - 由 `fitdistrplus` 包中的 `fitdistr()` 函数拟合的幂律

rplcon()我使用包中的函数生成一些随机变量poweRlaw

data <- rplcon(1000,10,2)

现在,我想知道哪些已知分布最适合数据。对数规范?经验?伽玛?幂律?指数截止的幂律?

所以我fitdist()在包中使用函数fitdistrplus

由于幂律分布和指数截止的幂律不是根据CRAN 任务视图:概率分布的基本概率函数,所以我根据示例 4 编写幂律的 d,p,q 函数?fitdist

最后,我使用下面的代码来获取参数xminalpha幂律:

但它会抛出一个错误:

我尝试在google和stackoverflow中搜索,出现了很多类似的错误问题,但是在阅读和尝试之后,我的问题没有解决方案,我应该怎么做才能正确完成以获得参数?感谢所有帮助我的人!

0 投票
0 回答
215 浏览

r - fitdistrplus 的自定义密度函数

是否可以使用 fitdistrplus 来拟合自定义密度函数?

例如:

如何从以下密度函数估计参数?

0 投票
1 回答
2121 浏览

r - 使用 MLE 获得标准化 T 分布的自由度

首先,我先感谢大家阅读本文。

我正在尝试在一系列数据上拟合标准化 T 学生分布(即标准偏差 = 1 的 T 学生);也就是说:我想通过最大似然估计来估计自由度。

我需要实现的示例可以在我制作的以下(简单)Excel文件中找到: https ://www.dropbox.com/s/6wv6egzurxh4zap/Excel%20Implementation%20Example.xlsx?dl=0

在 Excel 文件中,我有一个图像,其中包含与计算标准化 T 学生分布的对数似然函数相对应的公式。该公式是从金融书籍(金融风险管理要素 - 彼得克里斯托弗森)中提取的。

到目前为止,我已经用 R 尝试过这个:

df1 产生数字:13.11855278779897

logLike(ft1) 产生数字:-3600.2918050056487

但是,Excel 文件产生的自由度为:8.2962365022727,对数似然为:-3588.8879(这是正确答案)。

注意:我的代码读取的 .csv 文件如下: https ://www.dropbox.com/s/nnh2jgq4fl6cm12/Data%20for%20T%20Copula.csv?dl=0

有任何想法吗?谢谢大家!

0 投票
1 回答
109 浏览

r - 我怎样才能一张一张地得到照片而不是一起展示它们?

当我输入代码plot(x.logis)时,输​​出是四张图片一起显示,但我只寻找其中一张。如何分别绘制它们?

这是我的代码:

这是输出的结果:

在此处输入图像描述

0 投票
1 回答
571 浏览

r - R 拟合用户定义的分布

我正在尝试将我自己的分布拟合到我的数据中,找到分布的最佳参数以匹配数据并最终找到分布中峰值的 FWHM。根据我的阅读,包 fitdistrplus 是执行此操作的方法。我知道数据在二次背景上呈洛伦兹峰的形状。

数据 图:原始数据图

使用的原始数据:

我计算了定义分布和累积分布的方程:

我相信这些都是正确的。据我了解,使用 fitdist(或 mledist)方法仅使用这些定义就应该可以进行分布拟合:

这将返回语句'函数无法在初始参数处进行评估> fitdist中的错误(数据,“FF”,开始=列表(0,0.3,-4e-04,70000,13,331)):函数mle无法估计参数,在第一种情况下的错误代码为 100',在第二种情况下,我只得到估计值的“NA”值列表。

然后我计算了一个函数来给出分位数分布值以使用其他拟合方法(qmefit):

此代码的一部分需要调用 c++ 函数(通过使用库 Rcpp):

这个 c++ 方法只是将数据转换为直方图格式。如果描述数据的向量的第一个元素是 4,则将 '1' 添加 4 次到返回的向量等。这似乎也适用于返回合理的值。分位数函数图:

从 0 到 1 的概率以 0.001 为步长返回的分位数图

然后可以通过 fitdist 函数尝试“qmefit”方法:

我随机选择了“概率”值,因为我不完全理解它们的含义。这要么直接使 R 会话崩溃,要么在短暂的口吃后返回一个“NA”值列表作为估计值和行 <std::bad_alloc : std::bad_alloc>

我不确定我是否在这里犯了一个基本错误,并且感谢任何帮助或建议。

0 投票
1 回答
824 浏览

r - 如何在 R 中的 fitdistrplus 包中使轴从零开始

我使用fitdist包中的函数fitdistrplus来获得适合我的数据的最佳分布并绘制ppcomp图形,我使用示例代码?fitdistrplus替换我的数据和代码。

ppcomp

到目前为止,一切都很好!但是看图片的左下角,有一些空间,或者轴不是从零开始的!

所以我用谷歌搜索并找到了两种方法:一种方法在基础图中,xaxs并被yaxs使用。

基图

ggplot2中的另一种方法expand=c(0,0)被使用。

扩张

所以我尝试用这两种方法来画图ppcomp

但发生错误:

那么,我应该怎么做才能在没有错误的情况下完成目标,或者什么是正确的代码?

0 投票
1 回答
179 浏览

r - R 中的 fitdistrplus 包中缺少函数 ppcomp 的图例

我有一个超过 2000 万个值的大数据,由于隐私和使代码可重复,我使用 mydata 来替换它。

我想找到mydata最适合的已知发行版,因此选择fitdist了包fitdistrplus中的功能。

然后,我使用ppcomp函数绘制 PP 图来帮助我选择最佳拟合分布。

绘图 当然,对数正态mydata最适合,但是看一下legend情节,缺少不同颜色的线条注释,只显示文本注释,我该怎么办?

我尝试了一些值很少的数据集,它奏效了。那么大数据引出了一个问题,我应该怎么做才能让传奇变得完美呢?

0 投票
0 回答
54 浏览

r - 试图找到密度函数数据

我正在尝试根据我的数据获取 PDF 数据点。它曾经工作到昨晚,但我现在得到的数字非常少。我在这里做错了什么?

但是,如果我在最后一行使用 qgumbel 而不是 dgumbel,我会得到一个 CDF(足够接近)。CDF 很有帮助,但我希望获得 PDF 数据点。编辑:我正在做 rgumbel 因为数据集是一个相当小的数据集,因此我希望通过产生 500 个点来平滑曲线。

笔记:

  • PDF - 概率密度函数

  • CDF - 累积分布函数

0 投票
3 回答
5558 浏览

r - 如何在 fitdistrplus 中使用比例和位置参数拟合 t 分布

如何使用 fitdistrplus 估计 t 分布的比例参数的位置?我知道我需要提供初始值(在 MASS 中它工作得很好)但是在这个包中只允许 df。你有什么解决办法吗?

非常感谢。