我想知道如何从lsmobj
中的lsmeans
包中获取R
的元素。
require(lsmeans)
fiber.lm <- lm(strength ~ diameter + machine, data = fiber)
fiber.lsm <- lsmeans (fiber.lm, "machine")
fiber.lsm
machine lsmean SE df lower.CL upper.CL
A 40.38241 0.7236252 11 38.78972 41.97510
B 41.41922 0.7444169 11 39.78077 43.05767
C 38.79836 0.7878785 11 37.06426 40.53247
Confidence level used: 0.95
str(fiber.lsm)
'lsmobj' object with variables:
machine = A, B, C
我想要提取fiber.lsm的lsmeans
和SE
列。
答案 0 :(得分:19)
fiber.lsm
是一个无法进行子集化的S4对象。但是您可以使用对象的summary
。它返回模型结果的数据框。
s <- summary(fiber.lsm)
class(s)
# [1] "summary.ref.grid" "data.frame"
s[c("lsmean", "SE")]
# lsmean SE
# 40.38241 0.7236252
# 41.41922 0.7444169
# 38.79836 0.7878785
c(s[c("lsmean", "SE")])
# $lsmean
# [1] 40.38241 41.41922 38.79836
#
# $SE
# [1] 0.7236252 0.7444169 0.7878785