fitdistr
位于 MASS
包(package)。 说明
Maximum-likelihood 单变量分布拟合,如果需要,允许参数保持固定。
用法
fitdistr(x, densfun, start, ...)
参数
x |
长度至少为 1 且仅包含 finite 值的数值向量。 |
densfun |
字符串或返回在其第一个参数处计算的密度的函数。 分布 |
start |
给出要使用初始值优化的参数的命名列表。对于某些指定的发行版来说可以省略,而对于其他发行版则必须省略(请参阅详细信息)。 |
... |
其他参数,适用于 |
细节
对于正态分布、log-Normal、几何分布、指数分布和泊松分布,使用封闭形式 MLE(和精确标准误差),并且不应提供start
。
对于所有其他分布,使用 optim
执行对数似然的直接优化。估计的标准误差取自观察到的信息矩阵,通过数值近似计算。对于一维问题,使用 Nelder-Mead 方法;对于多维问题,使用 BFGS 方法,除非提供了名为 lower
或 upper
的参数(当使用 L-BFGS-B
时)或显式提供了 method
。
对于 "t"
命名分布,密度被视为具有位置 m
和尺度 s
的位置尺度族。
对于以下命名分布,如果省略 start
或仅部分指定,将计算合理的起始值: "cauchy"
、 "gamma"
、 "logistic"
、 "negative binomial"
(由 mu
和 size
参数化), "t"
和 "weibull"
。请注意,如果拟合较差,这些起始值可能不够好:特别是它们不能抵抗异常值,除非拟合分布是长尾的。
类 "fitdistr"
有 print
、 coef
、 vcov
和 logLik
方法。
值
类 "fitdistr"
的对象,一个包含四个组件的列表,
estimate |
参数估计, |
sd |
估计的标准误差, |
vcov |
估计的方差-协方差矩阵,以及 |
loglik |
对数似然。 |
注意
数值优化无法创造奇迹:请注意 optim
中有关缩放数据的注释。如果拟合的参数远离 1,请考虑指定控制参数 parscale
重新拟合。
例子
## avoid spurious accuracy
op <- options(digits = 3)
set.seed(123)
x <- rgamma(100, shape = 5, rate = 0.1)
fitdistr(x, "gamma")
## now do this directly with more control.
fitdistr(x, dgamma, list(shape = 1, rate = 0.1), lower = 0.001)
set.seed(123)
x2 <- rt(250, df = 9)
fitdistr(x2, "t", df = 9)
## allow df to vary: not a very good idea!
fitdistr(x2, "t")
## now do fixed-df fit directly with more control.
mydt <- function(x, m, s, df) dt((x-m)/s, df)/s
fitdistr(x2, mydt, list(m = 0, s = 1), df = 9, lower = c(-Inf, 0))
set.seed(123)
x3 <- rweibull(100, shape = 4, scale = 100)
fitdistr(x3, "weibull")
set.seed(123)
x4 <- rnegbin(500, mu = 5, theta = 4)
fitdistr(x4, "Negative Binomial")
options(op)
参考
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.
相关用法
- R fractions 有理逼近
- R farms 农场管理中的生态因子
- R forbes 福布斯关于阿尔卑斯山沸点的数据
- R fgl 法医玻璃碎片的测量
- R summary.rlm 鲁棒线性模型的总结方法
- R ginv 广义逆矩阵
- R housing 哥本哈根住房条件调查的频率表
- R biopsy 乳腺癌患者的活检数据
- R predict.qda 根据二次判别分析进行分类
- R contr.sdif 连续差异对比编码
- R Melanoma 恶性黑色素瘤的生存率
- R boxcox 线性模型的 Box-Cox 变换
- R predict.glmmPQL glmmPQL 拟合的预测方法
- R ucv 带宽选择的无偏交叉验证
- R theta.md 估计负二项式的 theta
- R parcoord 平行坐标图
- R rlm 线性模型的稳健拟合
- R npk 经典 N、P、K 阶乘实验
- R Cars93 1993 年美国销售的 93 辆汽车的数据
- R predict.lda 通过线性判别对多变量观测值进行分类
- R geyser 老忠实间歇泉数据
- R summary.negbin 类“negbin”对象的摘要方法函数
- R Aids2 澳大利亚艾滋病生存数据
- R truehist 绘制直方图
- R mcycle 来自模拟摩托车事故的数据
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Maximum-likelihood Fitting of Univariate Distributions。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。