日々の価格レンジ
株価の日次レンジは、市場のボラティリティを示す有用な指標です。
あなたは投資会社のデータアナリストとして働いています。上司は、世界のトップ10のテック企業の株について、日次レンジを計算したいと考えています。
日次株価が入った CSV ファイルのリスト stock_list があります。各ファイルにレンジ列を追加したいと考えています。ジュニアのデータアナリストが、次の R コードを書きました。
for (file in file_list) {
df <- read.csv(file)
df$range <- 0
for (r in 1:nrow(df)) {
df$range[r] <- df$High[r] - df$Low[r]
}
write.csv(df, file)
}
このコードを専用の Apple Mac で並列実行し、より良い結果のために FORK クラスターを使いたいと考えています。parallel パッケージはワークスペースに読み込まれています。
この演習はコースの一部です
R による並列プログラミング
演習の手順
- 提供されたコードを基に、ファイルパスを引数に取り、そのファイルに
range列を追加する関数add_range()を作成します。 - 4 コアの FORK クラスターを作成します。
add_range()をstock_listの各要素に並列で適用します。- クラスターを停止します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Make a function out of existing code
add_range <- function (file) {
___
}
# Make FORK cluster of four cores
cluster <- makeCluster(___, type = "___")
# Apply add_range to stock_list in parallel
out <- parLapply(___, ___, ___)
# Stop cluster
___