看起来像这样的框架
df<- data.frame(samples=1:60, location=rep(letters[1:3], 20),
variable=c(rep("A", 20), rep("B", 20), rep("C", 20)), value=rnorm(60))
df
samples location variable value
1 1 a A 0.32513726
2 2 b A 2.05029602
3 3 c A -0.10470011
4 4 a A 0.17142511
5 5 b A 0.94286900
6 6 c A -0.01325556
我需要的是绘制(点图)location
(a,b或c)(x轴)和中位数value
(y轴)的每个位置每个不同的variable
(A,B或C)。
我想在ggplot2
到目前为止,我已经使用
了ggplot(data=df, aes(Location, value), group="variable") + stat_summary(fun.y="median", geom="point")
但它不起作用..
答案 0 :(得分:2)
获取此数据的简便方法是使用dplyr。这样做的好处是你可以使用ggplot2绘制它,而无需了解许多stat_summary转换。
已修改:要包含按geom_line()
分组的variable
图层。
library(dplyr)
df2 <- df%>%group_by(variable, location) %>%
summarise(median = median(value))
ggplot(df2, aes(location, median, col=variable)) +
geom_point() +
geom_line(aes(group = variable))
https://cloud.google.com/bigquery/sql-reference/functions-and-operators#regexp_match
答案 1 :(得分:1)