아래 코드를 R로 병렬 처리하고 싶습니다. for 중첩 된 for 루프입니다. 사용 할 수있다 ( 중첩 된 for 루프를 병렬 처리하십시오.
이 코드를 병렬화하는 더 좋은 방법이 있나요 :Error in { : task 1 failed - "invalid 'type' (list) of argument"
for (i in 1:nrow(my_dataset_preprocessed)){
for (j in 1:ncol(my_dataset_preprocessed)){
my_dataset_preprocessed[i,j] = min(my_dataset_preprocessed[i,j], 0.1)
}
}
나는
library(foreach)
library(doParallel)
registerDoParallel(detectCores())
clusterExport(cl, "my_dataset")
threshold_par <- function (X) {
co <- foreach(i=1:nrow(X)) %:%
foreach (j=1:ncol(X)) %dopar% {
co = min(X[i,j], 0.1)
}
matrix(unlist(co), ncol=ncol(X))
}
system.time(threshold_par(my_dataset))
doParallel
사용하여 아래의 코드를 시도하고있다 그러나 나는 다음과 같은 오류를 얻고있다 parLapply)? 그렇지 않은 경우 위 코드를 어떻게 수정합니까?
를 제거하는 경우는 일 다음 내가 생각하는'lapply (my_dataset_preprocessed, 기능 (X) PMIN (X, 0.1))'할 간단 할 것입니다. – Benjamin
데이터가 매트릭스 인 경우, 다음과 같이 작동해야합니다 :'my_dataset [my_dataset> 0.1] <- 0.1' – emilliman5