从 agricolae 中的 LSD.test 输出中提取字母
extracting letters from LSD.test output in agricolae
我在 agricolae
个包中使用 LSD.test
下面是一个可重现的例子
library('agricolae')
group <- c(1,1,1,2,2,2,3,3,3)
variable <- c(1,2,1.5,10,11,12,22,23,21)
df <- data.frame(cbind(group,variable))
model <- aov(variable~group,data=df)
LSD.test(model,"group",p.adj="bonferroni")
我得到以下输出,这很棒
$statistics
MSerror Df Mean CV t.value MSD
0.8035714 7 11.5 7.794969 3.127552 2.289134
$parameters
test p.ajusted name.t ntr alpha
Fisher-LSD bonferroni group 3 0.05
$means
variable std r LCL UCL Min Max Q25 Q50 Q75
1 1.5 0.5 3 0.2761907 2.723809 1 2 1.25 1.5 1.75
2 11.0 1.0 3 9.7761907 12.223809 10 12 10.50 11.0 11.50
3 22.0 1.0 3 20.7761907 23.223809 21 23 21.50 22.0 22.50
$comparison
NULL
$groups
variable groups
3 22.0 a
2 11.0 b
1 1.5 c
attr(,"class")
[1] "group"
我想从此输出中提取中位数和字母。
例如,为了提取第 3 组的中位数,我使用了这个函数
output [[5]][[1]][[1]]
给出了这个输出
[1] 22
到目前为止,一切都很好。我会在下面解释问题并提出问题。
现在,我还需要提取这封信。
我尝试了以下代码
output [[5]][[2]][[1]]
[1] a
Levels: a b c
我的问题是:
有什么办法去掉代码中的Levels: a b c
语句,只得到字母吗?
非常感谢。
as.character(output [[5]][[2]][[1]])
解决了,感谢@Tim Biegeleisen 的评论
我在 agricolae
个包中使用 LSD.test
下面是一个可重现的例子
library('agricolae')
group <- c(1,1,1,2,2,2,3,3,3)
variable <- c(1,2,1.5,10,11,12,22,23,21)
df <- data.frame(cbind(group,variable))
model <- aov(variable~group,data=df)
LSD.test(model,"group",p.adj="bonferroni")
我得到以下输出,这很棒
$statistics
MSerror Df Mean CV t.value MSD
0.8035714 7 11.5 7.794969 3.127552 2.289134
$parameters
test p.ajusted name.t ntr alpha
Fisher-LSD bonferroni group 3 0.05
$means
variable std r LCL UCL Min Max Q25 Q50 Q75
1 1.5 0.5 3 0.2761907 2.723809 1 2 1.25 1.5 1.75
2 11.0 1.0 3 9.7761907 12.223809 10 12 10.50 11.0 11.50
3 22.0 1.0 3 20.7761907 23.223809 21 23 21.50 22.0 22.50
$comparison
NULL
$groups
variable groups
3 22.0 a
2 11.0 b
1 1.5 c
attr(,"class")
[1] "group"
我想从此输出中提取中位数和字母。
例如,为了提取第 3 组的中位数,我使用了这个函数
output [[5]][[1]][[1]]
给出了这个输出
[1] 22
到目前为止,一切都很好。我会在下面解释问题并提出问题。
现在,我还需要提取这封信。
我尝试了以下代码
output [[5]][[2]][[1]]
[1] a
Levels: a b c
我的问题是:
有什么办法去掉代码中的Levels: a b c
语句,只得到字母吗?
非常感谢。
as.character(output [[5]][[2]][[1]])
解决了,感谢@Tim Biegeleisen 的评论