问题描述
我在 R 中使用 likert 包来生成图,得到总体结果,然后按子组划分结果。
当我绘制没有任何分组的图时,项目从高到低显示。
library(likert)
data(pisaitems)
items28 <- as.data.frame(pisaitems[,substr(names(pisaitems),1,5) == "ST24Q"])
p <- likert(items28)
plot(p)
但是当我按子组分解结果时,项目按数据中的列位置排序。添加或删除ordered = TRUE 参数不会改变这一点。
items28 <- cbind(groups = as.factor(c("A","B","C")),items28)
pgroups <- likert(items28[2:12],grouping = items28$groups)
plot(pgroups,ordered = TRUE)
如果我希望子组图与未分组图的顺序相同(即 ST24Q10 在顶部,然后是 S524Q05 等)而不是默认的列顺序,我可以这样做吗?或者我是否需要手动重新排序 pgroups 中的列?
编辑:有趣的是,手动重新排序列似乎也不起作用?以下代码生成与上面相同的分组图。由于列已重新排序,因此我无法确定项目订单基于什么。
items28_g <- cbind(groups = as.factor(c("A",items28)
items28_g <- items28_g %>% select(1,11,6,9,8,4,12,3,2,5,10,7)
pgroups <- likert(items28_g[2:12],grouping = items28_g$groups)
plot(pgroups)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)