【发布时间】:2020-09-16 09:44:08
【问题描述】:
我需要从我的数据框上的一些列中制作几个散点图,所以我决定制作一个循环,但我不知道如何将它设置为仅在我感兴趣的列上进行迭代。 我的代码如下所示:
col_xVScol_y<-ggplot(data=df, aes(x=col_x, y=col_y)) +
geom_point(aes(color= col_z))
col_y 和 col_z 总是相同的,我只需要遍历一组代替 col_x 的列
我已经看到您可以使用 colnames() 遍历列,例如:
for(i in colnames(df)){
col_xVScol_y<-ggplot(data=df, aes(x=col_x, y=col_y)) +
geom_point(aes(color= col_z))]
}
但是这种方式不适合我的数据框,因为它会遍历所有列,而我只对一组感兴趣。
【问题讨论】:
-
我将使用
tidyr包中的pivot_longer重塑数据框,以便您的所有col_x列(假设它们具有唯一的列名)堆叠到一个分类names列中关联的value列。