並列計算用に R パッケージforeach()
の関数を使用しています。その機能の他に、パッケージ内の機能foreach
を使用することも必要だと思います。registerDoMC()
doMC
ただし、DESCRIPTION
ファイルを書き込むと、Imports
セクションに が含まれていますdoMC (>= 1.3.0), foreach (>= 1.4.1)
が、コードを実行すると、次のエラーが表示されます:関数が見つかりませんiter
。したがって、私もimport
パッケージiterators
です。
まだエラーがあるようです:mclapply()
関数は によって使用されforeach()
、この関数はとパッケージの両方に表示されます。両方のパッケージをセクションに含めましたが、実行すると次の警告が表示されます。parallel
multicore
Imports
search()
Warning messages:
1: replacing previous import ‘mclapply’ when loading ‘parallel’
2: replacing previous import ‘mcparallel’ when loading ‘parallel’
3: replacing previous import ‘pvec’ when loading ‘parallel’
これはかなり奇妙です: と の両方のパッケージを明示的に指定しているにもかかわらず、imports
自分のパッケージをロードした後でもそれらの関数を使用することはできません...代わりに、明示的に実行する必要があります:iterators
multicore
library(iterators)
library(multicore)
並列計算を利用するパッケージで独自の関数を使用するため。パッケージの記述に何か問題がありますか? どうもありがとう!