如何解决通过R中的混乱调查数据进行分组并扩大范围
我有这样的数据。
data_in <- read_table2("**Characteristic** **N=175**
Q50_1.Enrollreason-Bystudentchoice
Never 65/153(42%)
Rarely 31/153(20%)
Sometimes 42/153(27%)
Often 15/153(9.8%)
Q50_2.Enrollreason-Byparentchoice
Never 4/153(31%)
Rarely 9/153(19%)
Sometimes 7/153(37%)
Often 2/153(13%)
Q50_3.Enrollreason-ExpelledByanotherschool
Never 3/152(20%)
Rarely 1/152(8.6%)
Sometimes 36/152(24%)
Often 72/152(47%)
Q60_1.Exitlreason-ReferredByanotherschool
Yes 39/152(26%)
No 13/152(8.6%)
Q60_2.Exitreason-SARB
Yes 44/152(29%)
No 1/ 15(12%)
Q60_3.Exitreason-Other
Yes 8/40(20%)
No 2/40(5.0%)
Q60_4.Exitreasonoffice
Yes 32/155(21%)
No 28/155(18%)
")
我想重新格式化此数据,使其看起来像这样(我没有填写所有数据)。基本上,每个问题的答案应在每个问题的右侧,并按问题编号分组。例如,所有Q50问题都应归为一类。
到目前为止,这是我一直在研究的内容,但是如您所见,R为每种响应类型创建了新列...使得导出到excel时比较混乱。我希望将“是”和“否”堆叠在“从不”,“很少”系列下方,以便于查看。
之所以这样,是因为我的实际数据有更多的答案选项,因此当我以更广泛的方式进行操作时,会创建一个很难阅读的非常宽的数据框。我需要制作出一些使我的团队更容易在excel中导航的东西。
data_in %>%
tidyr::separate("**Characteristic**",c("question",'description'),sep = "Q",remove = F) %>%
fill(description) %>%
mutate(description = paste("Q",description)) %>%
dplyr::filter(!is.na(`**N = 175**`)) %>%
select(-`**Characteristic**`) %>%
pivot_wider(id_cols = description,names_from = question,values_from = `**N = 175**`)
任何建议,不胜感激!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。