私は、引数リストX
の一意の要素だけを処理するlapply()
とmclapply()
のバージョンを探しています。このようなものはすでに存在しますか?lapply()とmclapply()の冗長処理を避けるバージョン
EDIT:つまり、私はlapply()
は、処理の重複を気にしないようにしたいが、私はlength(lapply(X, ...))
はlength(X)
を等しくする必要はなく、length(unique(X))
(及び適切な値が一致します)。また、私はX
の各要素がかなり小さいと仮定しているので、固有の値を取ることはあまり問題にならないはずです。
現在の行動:
long_computation <- function(task){
cat(task, "\n")
# Sys.sleep(1000) #
return(task)
}
tasks <- rep(LETTERS[1:2], 2)
lapply(tasks, long_computation)
## A
## B
## A
## B
## [[1]]
## [1] "A"
##
## [[2]]
## [1] "B"
##
## [[3]]
## [1] "A"
##
## [[4]]
## [1] "B"
望ましい行動:lapply
(タスク、long_computation)
## A
## B
## [[1]]
## [1] "A"
##
## [[2]]
## [1] "B"
##
## [[3]]
## [1] "A"
##
## [[4]]
## [1] "B"
することができますfind the intended use case here。
ユニーク入力適用の繰り返しに入る前にコンボを入力してください – hrbrmstr
私はしたいと思いますが、私は完全な拡張結果を返す必要があります。重複が不規則に配列されていても、 'X = c(1,2,2,3,2,2,5,7,7,7) 'のようになります。 – landau
つまり、' length(lapply(X、...) )) 'は' length(X) 'と等しくなければなりません。 – landau