在R中使用Likert包分析真实调查数据

5

我进行了一项包含138个问题的调查,其中只有少数问题是Likert类型的,有些问题有不同的量表。

我一直试图在R中使用Likert包来分析和图形化呈现数据,但是我非常难以理解它的任何部分。

我已经浏览了“演示文稿”,但只有在您已经知道该软件包的情况下才有用。它不解释在能够应用Likert包之前必须采取的任何步骤、可以实际应用于软件包的内容、如何重新命名变量等等。你只会得到一堆代码和一个兔子洞,试图弄清楚所有这些。

我已经搜索谷歌寻找使用Likert包的逐步指南,但什么也没找到。

请问有人能够指导我一个指南或至少提供我必须在我的数据框架中采取的步骤,才能尝试使用Likert包吗?

我希望使用此软件包将我的几列(包含Likert响应)拟合到堆积条形图中。

一旦我确定Likert包确切接受哪些清理后的数据框架,我就应该能够遵循演示文稿...也许...

根据我的有限R知识和自己尝试弄清楚事情的情况,我已经完成了以下工作。

   library(likert)
   library(dplyr)
   fdaff_likert <- select(f2f, RESPID, daff_rate)
   fdaff_likert <- data.frame(fdaff_likert)
   fdaff_likert <- likert(items=fdaff_likert[,2, drop = FALSE], nlevels = 5)

我的Likert量表的输出结果是:
summary(fdaff_likert)

       Item      low  neutral     high     mean       sd
1 daff_rate 9.977827 37.91574 52.10643 3.802661 1.302508

然而,情节却杂乱无章。

plot (fdaff_likert)

DAFF表现的堆积条形图

李克特量表的顺序是错乱的,并且没有正确居中。此外,如何将y轴重命名为问题?

为了进行后续分析,如何将其分成组级别(基于指定原始数据框中区域的另一列)?

1个回答

9
library(likert)
set.seed(1)
n <- 138
# An illustrative example
fdaff_likert <- data.frame(
    RESPID=sample(1:5,n, replace=T), 
    daff_rate=factor(sample(1:5,n, replace=T), labels=c("Good","Neither","Poor","Very Good","Very Poor"))
)
fdaff_likert1 <- likert(items=fdaff_likert[,2, drop = FALSE], nlevels = 5)
# Plot with unordered categories
plot(fdaff_likert1)

enter image description here

# Reorder levels of daff_rate factor
fdaff_likert$daff_rate <- factor(fdaff_likert$daff_rate, 
                                 levels=levels(fdaff_likert$daff_rate)[c(5,3,2,1,4)])

fdaff_likert2 <- likert(items=fdaff_likert[,2, drop = FALSE], nlevels = 5)
# Plot with ordered categories
plot(fdaff_likert2)

enter image description here

这里有一个示例,演示如何创建带有分组项目的图表。

set.seed(1)
fdaff_likert <- data.frame(
    country=factor(sample(1:3, n, replace=T), labels=c("US","Mexico","Canada")), 
    item1=factor(sample(1:5,n, replace=T), labels=c("Very Poor","Poor","Neither","Good","Very Good")),
    item2=factor(sample(1:5,n, replace=T), labels=c("Very Poor","Poor","Neither","Good","Very Good")),
    item3=factor(sample(1:5,n, replace=T), labels=c("Very Poor","Poor","Neither","Good","Very Good"))
)
names(fdaff_likert) <- c("Country", 
                         "1. I read only if I have to", 
                         "2. Reading is one of my favorite hobbies",
                         "3. I find it hard to finish books")

fdaff_likert3 <- likert(items=fdaff_likert[,2:4], grouping=fdaff_likert[,1])
plot(fdaff_likert3)

enter image description here


如果我有一个数据框中的列,其中包含与Likert分数对应的调查位置(V2),那么如何通过该位置对响应进行分组? - Chris Bova
如果您想比较每个调查位置的不同堆叠条形图,就像这个例子:链接,您会如何做到这一点?如何将位置信息调用到Likert分析中?这是我非常困惑的一个部分。在Likert包的演示中,没有提及位置,但它们出现在图中。 - Chris Bova

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接