Как указано в документации к функции likert
(?likert::likert
), столбцы data.frame в items
должны быть множителями .Затем имена уровней определяют метки ответов, используемые в производных графиках likert.Поскольку ваши данные невозможно воспроизвести, рассмотрим следующий искусственный пример:
library(likert)
set.seed(1)
df <- data.frame(Score = factor(sample(1:6, size = 100, replace = TRUE),
labels = c("Strongly Disagree", "Disagree", "Slightly Disagree", "Slightly Agree", "Agree", "Strongly Agree")))
(df_likert <- likert(items = df))
#> Item Strongly Disagree Disagree Slightly Disagree Slightly Agree Agree
#> 1 Score 19 18 12 15 15
#> Strongly Agree
#> 1 21
likert.bar.plot(df_likert)
Редактировать: для нескольких (например, числовых) столбцов, представляющихотдельные группы ответов в data.frame, сначала перекодируйте столбцы как факторы, а затем примените функцию likert
к перекодированному data.frame:
## initial data.frame of integers
df <- data.frame(
sapply(c("Q1", "Q2", "Q3"), function(x) sample(1:6, size = 100, replace = TRUE))
)
## recode each column as a factor
df_factor <- as.data.frame(
lapply(df, function(x) factor(x,
labels = c("Strongly Disagree", "Disagree", "Slightly Disagree",
"Slightly Agree", "Agree", "Strongly Agree"))
)
)
(df_likert <- likert(items = df_factor))
#> Item Strongly Disagree Disagree Slightly Disagree Slightly Agree Agree
#> 1 Q1 19 18 12 15 15
#> 2 Q2 19 16 19 18 15
#> 3 Q3 18 15 8 21 20
#> Strongly Agree
#> 1 21
#> 2 13
#> 3 18
likert.bar.plot(df_likert)