我有一个数据框df
,看起来像这样:
group ID y1 y2
A 1 21 14
A 2 11 21
A 3 21 17
...
B 1 71 12
B 2 41 14
B 3 31 15
...
并希望使用ggplot()
将一组中的变量与另一组中的变量相对应。例如,df$y1[df$group=="A"]
针对df$y2[df$group=="B"]
。我天真地认为绘图的代码可能是这样的,但显然不正确:
ggplot(df, aes(x = df$y1[df$group=="A"], y = df$y2[df$group=="B"])) + geom_point()
我知道如果我想整体数据的子集,例如仅绘制group A
,我可以做类似的事情:
ggplot(subset(df, group=="A"), aes(x = y1, y = y2)) + geom_point()
我想我可以通过重塑数据来解决这个问题,以便创建变量y1.A
,y1.B
,y2.A
,y2.B
等等,但我有很多变量这似乎是一个冗长的方法。