在R中,当lm()
我使用时,如果我na.action = na.pass
在调用中设置lm()
,那么在汇总表中,对于任何无法估计的系数都存在NA(因为在这种情况下缺少单元格).
但是,如果我只提取从摘要对象的系数,即使用summary(myModel)$coefficients
或coef(summary(myModel))
,那么NA的省略.
当我提取系数时,我希望包含NA,就像我打印摘要时一样.有没有办法做到这一点?
设置options(na.action = na.pass)
似乎没有帮助.
这是一个例子:
> set.seed(534)
> myGroup1 <- factor(c("a","a","a","a","b","b"))
> myGroup2 <- factor(c("first","second","first","second","first","first"))
> myDepVar <- rnorm(6, 0, 1)
> myModel <- lm(myDepVar ~ myGroup1 + myGroup2 + myGroup1:myGroup2)
> summary(myModel)
Call:
lm(formula = myDepVar ~ myGroup1 + myGroup2 + myGroup1:myGroup2)
Residuals:
1 2 3 4 5 6
-0.05813 0.55323 0.05813 -0.55323 -0.12192 0.12192
Coefficients: (1 not defined because of singularities)
Estimate …
Run Code Online (Sandbox Code Playgroud) 如果我在R中有一个线性模型的汇总表,我怎样才能得到仅与交互估计相关联的p值,或者只是组拦截等,而不必计算行数?
例如,对于lm(y ~ x + group)
具有x
连续和group
分类的模型,lm
对象的汇总表具有以下估计值:
我想找出一种方法将每个这些作为一组p值,即使组的数量或模型公式发生变化.也许汇总表以某种方式用于将行组合在一起的信息?
以下是具有两个不同模型的示例数据集.第一个模型有四组不同的p值我可能想单独得到,而第二个模型只有两组p值.
x <- 1:100
groupA <- .5*x + 10 + rnorm(length(x), 0, 1)
groupB <- .5*x + 20 + rnorm(length(x), 0, 1)
groupC <- .5*x + 30 + rnorm(length(x), 0, 1)
groupD <- .5*x + 40 + rnorm(length(x), 0, 1)
groupE <- .5*x + 50 + rnorm(length(x), 0, 1)
groupF <- .5*x + 60 + rnorm(length(x), 0, 1)
myData <- data.frame(x …
Run Code Online (Sandbox Code Playgroud) 我试图将系统日期和时间输出到文本文件.当我这样做时,时区消失.一个例子如下:
> Sys.time()
[1] "2012-05-24 09:58:38 CDT"
> currentTime <- Sys.time()
> currentTime
[1] "2012-05-24 09:58:49 CDT"
> cat(as.character(currentTime), sep = "\n")
2012-05-24 09:58:49
Run Code Online (Sandbox Code Playgroud)
时区发生了什么,以及如何将其取回?
我希望能够从日记文章中获取具有标准错误和样本大小的单元格双向表,并计算ANOVA表,创建交互图以及其他可能的事项.
我可以手动执行此操作,我只是想知道是否已经有一些方法(例如,包)在R中自动执行此操作.
即使只是一些更好的搜索术语也可能有所帮助,因为搜索ANOVA,单元格和标准错误显然不是很有选择性.
使用 R 中的默认对比度(contr.treatment),线性模型对象的摘要根据级别名称给出行名称。当我将对比度更改为 contr.sum 时,线性模型对象的摘要根据组合数字给出行名称。
对于下面的示例代码,处理对比的行名称是 xa xb xc xd xe,对于总对比,它们是 x1 x2 x3 x4 x5。
除了手动重命名行之外,有没有办法使这些行为相同?
例子:
y <- rnorm(10, 0, 1)
x <- factor(rep(letters[1:5], each = 2))
options(contrasts = c("contr.treatment", "contr.poly"))
summary(lm(y ~ x))
options(contrasts = c("contr.sum", "contr.poly"))
summary(lm(y ~ x))
Run Code Online (Sandbox Code Playgroud)