Я очень плохо знаком с 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) Как получить правильный процент для людей, согласных и не согласных с вопросом?
Спасибо всем!