का उपयोग करके दो ऑब्जेक्ट्स को आउटपुट करें, मैं जानना चाहूंगा कि foreach
%dopar%
लूप का उपयोग करने के बाद दो अलग-अलग ऑब्जेक्ट्स आउटपुट करना संभव होगा या नहीं।फ़ोरैच
मैं जो कुछ भी ढूंढ रहा हूं उसे समझाऊंगा।
dim(result[[1]]) # equals to nrow=length(vec1) and ncol=100
dim(result[[2]]) # equals to nrow=length(vec2) and ncol=100
:
library(doMC)
library(parallel)
registerDoMC(cores=4)
result <- foreach(i=1:100) %dopar% {
#### some code here
#### some code here
vec1 <- result_from_previous code # It would be the 1st object I'd like to ouput
vec2 <- result_from_previous code # It would be the 2nd object I'd like to output
}
मेरे वांछित आउटपुट जैसे लंबाई 2 की data.frames, की एक सूची होगा: चलो मैं पाश अंदर कई आपरेशनों का एक परिणाम के रूप में दो data.frames है लगता है चलो मैं एक पिछली पोस्ट Saving multiple outputs of foreach dopar loop से इस के साथ की कोशिश की है:
comb <- function(x, ...) {
lapply(seq_along(x), function(i) c(x[[i]], lapply(list(...), function(y) y[[i]])))
result <- foreach(i=1:100, .comb='comb', .multicombine=TRUE) %dopar% {
#### some code here
#### some code here
vec1 <- result_from_previous code
vec2 <- result_from_previous code
list(vec1, vec2)
}
लेकिन यह अपेक्षित परिणाम
नहीं देतामैं निम्न कार्य करें:
result <- foreach(i=1:100, .comb=cbind) %dopar% {
#### some code here
#### some code here
vec1 <- result_from_previous code
vec2 <- result_from_previous code
}
मैं केवल vec2
की data.frame प्राप्त करते हैं। क्या दोनों आउटपुट लौटने या सहेजने का कोई तरीका है?
धन्यवाद