#r
#r
Вопрос:
Я использую функцию R cld() с emmeans, но порядок уровней факторов в выводе отличается от того, что я установил. Перед вызовом cld() вывод by.years также находится в нужном порядке (скриншот), но когда я выполняю cld(), вывод находится в алфавитном порядке Light — Moderate — No (скриншот). Я также проверил cld.years $Grazing.intensity, уровни правильные. Есть ли способ указать порядок уровней факторов в выводе cld()? Любая помощь приветствуется.
# sample data
plants <- structure(list(Grazing.intensity = structure(c(3L, 2L, 3L, 3L, 3L, 1L, 3L, 2L, 2L, 2L, 1L, 2L, 3L, 3L, 3L), .Label = c("Light-grazing", "Moderate-grazing", "No-grazing"), class = "factor"), Grazing.intensity1 = structure(c(3L, 2L, 3L, 3L, 3L, 1L, 3L, 2L, 2L, 2L, 1L, 2L, 3L, 3L, 3L), .Label = c("LG", "MG", "NG"), class = "factor"), Years = structure(c(1L, 1L, 1L, 2L, 2L, 2L, 1L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 2L), .Label = c("Dry-year", "Wet-year"), class = "factor"), Month = structure(c(2L, 2L, 2L, 1L, 3L, 3L, 1L, 1L, 3L, 1L, 3L, 3L, 2L, 2L, 3L), .Label = c("Aug.", "Jul.", "Sept."), class = "factor"), Plots = c(1L, 3L, 8L, 6L, 9L, 7L, 2L, 2L, 10L, 10L, 7L, 7L, 9L, 4L, 2L), Species.richness = c(8L, 6L, 10L, 11L, 9L, 5L, 7L, 13L, 10L, 6L, 5L, 5L, 14L, 8L, 10L)), class = "data.frame", row.names = c(NA, -15L))
# set the order of factor levels
plants$Grazing.intensity <- factor(plants$Grazing.intensity, levels =
c('No-grazing','Light-grazing','Moderate-grazing'))
attach(plants)
lmer.mod <- lmer(Species.richness ~ Grazing.intensity*Years (1|Month), data = plants)
by.years <- emmeans(lmer.mod, specs = ~ Grazing.intensity:Years, by = 'Years', type = "response")
# display cld
cld.years <- cld(by.years, Letters = letters)
Я впервые публикую образцы данных в StackOverflow, поэтому это может быть неправильно.. Я использовал dput().
Комментарии:
1. Вы пишете код R, а не код RStudio, поэтому нет необходимости ссылаться на него в заголовке или теле вопроса.
Ответ №1:
Я решил проблему. Порядок изменен, поскольку уровни отображаются в порядке возрастания emmean. Я установил sort = FALSE
, и результат был отображен в порядке по умолчанию. Я должен был более внимательно прочитать документацию.