[Rd] parRapply and parCapply return a list in corner cases
Simone Giannerini
@g|@nner|n| @end|ng |rom gm@||@com
Mon May 18 17:23:57 CEST 2020
According to ?parCapply:
parRapply and parCapply always return a vector.
This appears not to be the case in the following minimal reproducible example:
> library(parallel)
> nslaves <- 2
> cl <- makeCluster(nslaves)
> X <- matrix(2,nrow=3,ncol=4)
> X <- rbind(c(1,1,0,1),X)
> tv <- parCapply(cl,X,FUN=function(x){
+ ind <- x[1]
+ y <- x[-1]
+ if(ind==1){
+ r1 <- sum(y)
+ }else{
+ r1 <- logical(0)
+ }
+ return(unlist(as.numeric(c(ind,r1))))
+ })
> tv
[[1]]
[1] 1
[[2]]
[1] 6
[[3]]
[1] 1
[[4]]
[1] 6
[[5]]
[1] 0
[[6]]
[1] 1 6
> class(tv)
[1] "list"
> sessionInfo()
R version 4.0.0 (2020-04-24)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18363)
Matrix products: default
locale:
[1] LC_COLLATE=Italian_Italy.1252 LC_CTYPE=Italian_Italy.1252
[3] LC_MONETARY=Italian_Italy.1252 LC_NUMERIC=C
[5] LC_TIME=Italian_Italy.1252
attached base packages:
[1] parallel stats graphics grDevices utils datasets
methods base
loaded via a namespace (and not attached):
[1] compiler_4.0.0
--
_________________________________________________________________
PHILOSOPHICAL TRANSACTIONS OF THE ROYAL SOCIETY A
Theme issue ‘DNA as information’
edited by Julyan H.E. Cartwright, Simone Giannerini and Diego L. González
_________________________________________________________________
Simone Giannerini
Dipartimento di Scienze Statistiche "Paolo Fortunati"
Universita' di Bologna
Via delle belle arti 41 - 40126 Bologna, ITALY
Tel: +39 051 2098262 Fax: +39 051 232153
https://www.unibo.it/sitoweb/simone.giannerini/
More information about the R-devel
mailing list