使用dplyr进行探索性绘图

使用dplyr进行探索性绘图,r,plyr,dplyr,R,Plyr,Dplyr,我经常用d_ply绘制探索性的图 一个简单的例子: require(plyr) plot_species <- function(species_data){ p <- qplot(data=species_data, x=Sepal.Length, y=Sepal.Width) print(p) } d_ply(.data=iris, .variables="Species", function(x)plot_s

我经常用d_ply绘制探索性的图

一个简单的例子:

require(plyr)

plot_species <- function(species_data){
  p <- qplot(data=species_data,
        x=Sepal.Length,
        y=Sepal.Width)
  print(p)

}

d_ply(.data=iris,
      .variables="Species",
      function(x)plot_species(x))
require(plyr)

plot\u species我相信您可以使用
do
来完成此任务,其功能与您在
d\u ply
中使用的功能相同。它将直接打印到绘图窗口,但如果使用命名参数(请参阅帮助页,这与使用
dlply
),它也会将绘图保存为结果
data.frame
中的
列表。我没有完全掌握
do
所能做的一切,但如果我不使用命名参数,我会收到一条错误消息,但绘图仍会打印到绘图窗口(在RStudio中)

plot\u物种
require(dplyr)

iris_by_species <- group_by(iris,Species)

plot_species <- function(Sepal.Length,Sepal.Width){

  species_data <- data.frame(Sepal.Length,Sepal.Width)

  p <- qplot(data=species_data,
             x=Sepal.Length,
             y=Sepal.Width)
  print(p)

}


summarise(iris_by_species, plot_species(Sepal.Length,Sepal.Width))
plot_species <- function(species_data){
  p <- qplot(data=species_data,
        x=Sepal.Length,
        y=Sepal.Width)
  print(p)

}

group_by(iris, Species) %>%
    do(plot = plot_species(.))