我正在嘗試使用兩個變數進行分面包裝,但是一旦添加了變數“Group”,我就會收到此錯誤:Error in sanitise_dim(nrow) : object 'Group' not found
這是我的資料框:
dput(df)
structure(list(Condition = c("A", "A", "A", "A", "A", "A", "A",
"A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A",
"A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "B", "B", "B",
"B", "B", "B", "B", "B", "B", "B"), Gate = structure(c(1L, 1L,
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L,
4L, 4L, 4L, 4L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 1L, 1L, 2L, 2L,
3L, 3L, 4L, 4L, 5L, 5L), .Label = c("Gate 0", "Gate 1", "Gate 2",
"Gate 3", "Full"), class = "factor"), Modality = c("AO", "AO",
"AO", "AV", "AV", "AV", "AO", "AO", "AO", "AV", "AV", "AV", "AO",
"AO", "AO", "AV", "AV", "AV", "AO", "AO", "AO", "AV", "AV", "AV",
"AO", "AO", "AO", "AV", "AV", "AV", "AO", "AV", "AO", "AV", "AO",
"AV", "AO", "AV", "AO", "AV"), Participant = c(1, 2, 4, 1, 2,
4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2,
4, 1, 2, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3), Group = c("Group 2",
"Group 1", "Group 2", "Group 2", "Group 1", "Group 2", "Group 2",
"Group 1", "Group 2", "Group 2", "Group 1", "Group 2", "Group 2",
"Group 1", "Group 2", "Group 2", "Group 1", "Group 2", "Group 2",
"Group 1", "Group 2", "Group 2", "Group 1", "Group 2", "Group 2",
"Group 1", "Group 2", "Group 2", "Group 1", "Group 2", "Group 1",
"Group 1", "Group 1", "Group 1", "Group 1", "Group 1", "Group 1",
"Group 1", "Group 1", "Group 1"), Accuracy = c(0, 0.5, 0, 0,
0, 0.3, 0, 0.5, 0.7, 0.1, 0.5, 0.7, 0.2, 0.8, 0.7, 0.2, 0.8,
0.9, 0.2, 0.9, 0.9, 0.4, 0.9, 1, 0.4, 1, 0.9, 0.3, 1, 1, 0, 0,
0.2, 0.2, 0.2, 0.4, 0.6, 0.7, 0.6, 0.7), se = c(0, 0.166666666666667,
0, 0, 0, 0.152752523165195, 0, 0.166666666666667, 0.152752523165195,
0.1, 0.166666666666667, 0.152752523165195, 0.133333333333333,
0.133333333333333, 0.152752523165195, 0.133333333333333, 0.133333333333333,
0.1, 0.133333333333333, 0.1, 0.1, 0.163299316185545, 0.1, 0,
0.163299316185545, 0, 0.1, 0.152752523165195, 0, 0, 0, 0, 0.133333333333333,
0.133333333333333, 0.133333333333333, 0.163299316185545, 0.163299316185545,
0.152752523165195, 0.163299316185545, 0.152752523165195)), class = c("grouped_df",
"tbl_df", "tbl", "data.frame"), row.names = c(NA, -40L), groups = structure(list(
Condition = c("A", "A", "A", "A", "A", "A", "A", "A", "A",
"A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A", "A",
"A", "A", "A", "A", "A", "A", "A", "A", "A", "B", "B", "B",
"B", "B", "B", "B", "B", "B", "B"), Gate = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L,
3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 1L,
1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L), .Label = c("Gate 0",
"Gate 1", "Gate 2", "Gate 3", "Full"), class = "factor"),
Modality = c("AO", "AO", "AO", "AV", "AV", "AV", "AO", "AO",
"AO", "AV", "AV", "AV", "AO", "AO", "AO", "AV", "AV", "AV",
"AO", "AO", "AO", "AV", "AV", "AV", "AO", "AO", "AO", "AV",
"AV", "AV", "AO", "AV", "AO", "AV", "AO", "AV", "AO", "AV",
"AO", "AV"), Participant = c(1, 2, 4, 1, 2, 4, 1, 2, 4, 1,
2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2,
4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3), .rows = structure(list(
1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L,
14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L,
25L, 26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L, 35L,
36L, 37L, 38L, 39L, 40L), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -40L), .drop = TRUE))
這是我正在運行的代碼:
df%>%
group_by(Condition, Gate = fct_inorder(Gate), Modality, Group) %>%
dplyr::summarize(Proportion_Correct = mean(Accuracy), #item-level: Accuracy = mean(Correct) --> participant-level: Proportion_Correct = mean(Accuracy)
standarderror = (sd(Accuracy, na.rm = TRUE)/sqrt(n()))) %>%
ggplot(aes(x = Gate, y = Proportion_Correct, color = Modality, group = Modality))
geom_line()
geom_errorbar(aes(ymin = Proportion_Correct - standarderror, ymax = Proportion_Correct standarderror), color = "Black", size = .15, width = .3)
geom_point(size = 2)
scale_y_continuous(labels = scales::percent)
labs(y= "Accuracy", x = "Gate")
facet_wrap(~Condition, Group)
theme_minimal()
scale_color_brewer(palette = "Set1")
ggtitle("Performance")
當我運行這段代碼時,我得到了那個錯誤。我希望并排得到三個圖表。第 1 組應該有兩個條件,第 2 組只有一個條件。任何想法都值得贊賞。謝謝!!
uj5u.com熱心網友回復:
我相信在分面換行條件下,當您使用多個變數名時,您可以用“ ”號而不是逗號分隔它們。所以,你的代碼應該是:
df%>%
group_by(Condition, Gate = fct_inorder(Gate), Modality, Group) %>%
dplyr::summarize(Proportion_Correct = mean(Accuracy), #item-level: Accuracy = mean(Correct) --> participant-level: Proportion_Correct = mean(Accuracy)
standarderror = (sd(Accuracy, na.rm = TRUE)/sqrt(n()))) %>%
ggplot(aes(x = Gate, y = Proportion_Correct, color = Modality, group = Modality))
geom_line()
geom_errorbar(aes(ymin = Proportion_Correct - standarderror, ymax = Proportion_Correct standarderror), color = "Black", size = .15, width = .3)
geom_point(size = 2)
scale_y_continuous(labels = scales::percent)
labs(y= "Accuracy", x = "Gate")
facet_wrap(~Condition Group)
theme_minimal()
scale_color_brewer(palette = "Set1")
ggtitle("Performance")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/493118.html
下一篇:Shinyapp中的多個地塊