2012-03-27 8 views
5

estoy haciendo un análisis algo como esto:¿Puedo decirle al paquete R plyr que trabaje en paralelo de forma predeterminada?

library(plyr) 
input.files <- c("file1.txt", "file2.txt", "file3.txt") 
input.data <- llply(input.files, load.file, .parallel=TRUE) 
step.one.results <- llply(input.data, step.one, .parallel=TRUE) 
step.two.results <- llply(step.one.results, step.two, .parallel=TRUE) 
... 
step.N.results <- llply(`step.N-1.results`, step.N, .parallel=TRUE) 
... 

¿Hay alguna manera de hacer todas las funciones plyr paralelo de forma predeterminada, por lo que no siempre se tiene que especificar .parallel=TRUE para cada paso?

+0

Además de la solución a continuación, parece que hay una función llamada 'set.defaults' en el paquete' diversitree' que puede hacer esto. –

Respuesta

9
library(Defaults) 
setDefaults(llply, .parallel=TRUE) 

Habría que setDefaults en cada función para la que desea cambiar los formales por defecto. Puedes poner esto en tu .Rprofile si quieres.

También puede meterse con los formales directamente. p.ej. formals(llply)$.parallel <- TRUE debería funcionar.

+1

Solo para su información, parece que el paquete Predeterminado ya no está disponible en CRAN, por lo que tendrá que meterse con los formales directamente. –

Cuestiones relacionadas