Mit dplyr für Erkundungsgrundstücke

Ich habe d_ply regelmäßig verwendet, um Versuchspläne zu erstellen.

Ein einfaches Beispiel:

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))

Welche drei separate Parzellen erzeugt, eine für jede Art.

Ich möchte dieses Verhalten mithilfe von Funktionen in dplyr reproduzieren.

Dies erfordert anscheinend das erneute Zusammensetzen des data.frame innerhalb der von summarize aufgerufenen Funktion, was häufig unpraktisch ist.

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))

Können Teile des data.frame an die Funktion übergeben werden, die durch direktes Zusammenfassen aufgerufen wird, anstatt Spalten zu übergeben?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage