Имена легенд Лайкерта Сюжета для ответа - PullRequest
0 голосов
/ 30 июня 2019

Я разработал скрипт для построения шкалы Лайкерта.Сценарий работает правильно, и сюжет правильный.Я хочу изменить ярлык ответа, который будет: «Совершенно не согласен», «Не согласен», «Слегка не согласен», «Слегка согласен», «Согласен», «Совершенно согласен» в упорядоченном списке.Я пробовал разные решения, но ни одно из них не работает

Q1 <- read_excel("C:\\Users\\users\\Desktop\\Survey Responses\\Business Survey\\BusinessLikert.xlsx")

df <- data.frame(respondent = c(Q1$Respondent), Score = c(Q1$Q1))

df1 <- likert(items=df[,2, drop = FALSE], nlevels = 6)

summary(df1)

likert.bar.plot(df1)

likert.density.plot(df1)

image

1 Ответ

0 голосов
/ 30 июня 2019

Как указано в документации к функции 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)

Likert plot multiple groups

...