loglm
位于 MASS
包(package)。 说明
此函数为标准函数 loglin
提供了一个前端,允许以类似于其他拟合函数(例如 glm
)的方式指定和拟合对数线性模型。
用法
loglm(formula, data, subset, na.action, ...)
参数
formula |
指定对数线性模型的线性模型公式。 如果左侧为空,则需要 |
data |
数字数组或 DataFrame (或列表或环境)。在第一种情况下,它指定频率数组;在第二个中,它提供了 DataFrame ,从该 DataFrame 中优先以通常的方式获得公式中出现的变量。 此参数可能是调用 |
subset |
指定 DataFrame 中要使用的行的子集。默认值是获取所有行。 |
na.action |
指定处理缺失观测值的方法。如果存在缺失值,默认情况下会失败。 |
... |
可以向函数 |
细节
如果公式的左侧为空,则 data
参数提供频率数组,而公式的右侧用于构造 loglin
所需的固定面列表。结构零可以通过给出 start
参数并将这些条目设置为零来指定,如 loglin
的帮助信息中所述。
如果左侧不为空,则将右侧的所有变量视为分类因子,并构建频率数组。如果未指定完整数组中的某些单元格,它们将被视为结构零。公式的右侧再次用于构造观察和拟合总数必须一致的面列表,如 loglin
的要求。因此,a:b
、a*b
和 a/b
等术语都是等效的。
值
"loglm"
类的对象,传递拟合对数线性模型的结果。通用函数 print
、 summary
、 deviance
、 fitted
、 coef
、 resid
、 anova
和 update
存在方法,它们执行预期的任务。仅允许使用 anova
进行对数似然比测试。
偏差只是对数似然比统计量的替代名称,用于根据广义线性模型中的标准用法测试饱和模型中的当前模型。
警告
如果存在结构零点,自由度的计算可能不正确。 loglin
本身不采取任何措施来允许结构零。 loglm
为每个结构零扣除一个自由度,但无法考虑到由于模型空间维度损失而导致的误差自由度增益。 (这需要检查模型矩阵的秩,但由于迭代比例缩放方法主要是为了避免显式构造模型矩阵而开发的,因此计算至少很困难。)
当存在结构零点(或零拟合值)时,由于无限估计,估计系数将不可用。不过,偏差通常仍然是正确的。
例子
# The data frames Cars93, minn38 and quine are available
# in the MASS package.
# Case 1: frequencies specified as an array.
sapply(minn38, function(x) length(levels(x)))
## hs phs fol sex f
## 3 4 7 2 0
##minn38a <- array(0, c(3,4,7,2), lapply(minn38[, -5], levels))
##minn38a[data.matrix(minn38[,-5])] <- minn38$f
## or more simply
minn38a <- xtabs(f ~ ., minn38)
fm <- loglm(~ 1 + 2 + 3 + 4, minn38a) # numerals as names.
deviance(fm)
## [1] 3711.9
fm1 <- update(fm, .~.^2)
fm2 <- update(fm, .~.^3, print = TRUE)
## 5 iterations: deviation 0.075
anova(fm, fm1, fm2)
# Case 1. An array generated with xtabs.
loglm(~ Type + Origin, xtabs(~ Type + Origin, Cars93))
# Case 2. Frequencies given as a vector in a data frame
names(quine)
## [1] "Eth" "Sex" "Age" "Lrn" "Days"
fm <- loglm(Days ~ .^2, quine)
gm <- glm(Days ~ .^2, poisson, quine) # check glm.
c(deviance(fm), deviance(gm)) # deviances agree
## [1] 1368.7 1368.7
c(fm$df, gm$df) # resid df do not!
c(fm$df, gm$df.residual) # resid df do not!
## [1] 127 128
# The loglm residual degrees of freedom is wrong because of
# a non-detectable redundancy in the model matrix.
参考
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.
也可以看看
相关用法
- R loglm1 通过迭代比例缩放拟合对数线性模型 - 内部函数
- R logtrans 估计对数变换参数
- R lm.ridge 岭回归
- R lm.gls 通过广义最小二乘法拟合线性模型
- R lqs 抵抗回归
- R ldahist 多组的直方图或密度图
- R leuk 白血病患者的生存时间和白细胞计数
- R lda 线性判别分析
- 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-devel大神的英文原创作品 Fit Log-Linear Models by Iterative Proportional Scaling。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。