График Лайкерта продолжает отображать неверные проценты на моем графике - PullRequest
0 голосов
/ 25 февраля 2019

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

Чтобы обеспечить некоторый контекст для моего кода, есть 35 человек, которые были опрошены по шкале Ликерта: «полностью согласен», «согласен», «нейтрален», «не согласен» и «категорически не согласен».Было задано 20 вопросов, но для упрощения моего кода я написал только 10.

Пока это мой код:

library(ggplot2)

require(likert)
require(plyr)
require(reshape)
library(reshape2)

responses <- data[c(2:21)]

mylevels <- c('Strongly Agree', 'Agree', 'Neutral', 'Disagree', 'Strongly Disagree')

for(i in seq_along(data)) {
  data[,i] <- factor(data[,i], levels=mylevels)
}

ldata <- likert(data)


n.levels   <- sapply(data,nlevels)
max.levels <- levels(data[,which.max(n.levels)])

for (i in seq_along(data)) {
  mis.lev = which(!max.levels %in% levels(data[,i]))
  levels(data[,i]) = append(levels(data[,i]),max.levels[mis.lev])
}

lresponses <- likert(responses)

require(Epi)

for (i in seq_along(data)) {
  data[,i] = Relevel(data[,i],mylevels)}

lresponses <- likert(responses)

lgood

mylevels <- c('Strongly Agree', 'Agree', 'Neutral', 'Disagree', 'Strongly Disagree')
myColor <- c("pink","pink1", "pink2","pink3", "pink4")


items <- data.frame(‘Q1’=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q2'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q3'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q4'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q5'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q6'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q7'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q8'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q9'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 
                       'Q10'=factor(sample(mylevels[1:5], 35, replace=TRUE)), 

items

str(items)

groups <- sample(c('g1','g2'), 35, replace=TRUE)
tryCatch({
  # This will throw an error because all the items must have the same number of levels.
  lbad <- likert(items)
}, error=function(e) { 
  print("This is good that an error was thrown!")
  print(e) 
})

for(i in seq_along(items)) {
  items[,i] <- factor(items[,i], levels=mylevels)
}
lgood <- likert(items)
items
summary(lgood)
plot(lgood)

lgr <- likert(items, grouping=groups)
summary(lgr)
plot(lgr)

library(likert)


results <- likert(as.data.frame(items))
plot(results, color= myColor)

Любая помощь, которую вы мне могли бы оказать, была быискренне признателен!Я потратил на это целую неделю и серьезно схожу с ума!

Вопросы TLDR: 1) Как мне привести вопросы в порядок, т. Е. С Q1 по Q10?2) Как получить правильный процент для людей, согласных и не согласных с вопросом?

Спасибо всем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...