每日价格区间
股票价格的日内区间是衡量市场波动性的一个重要指标。
您在一家投资公司担任数据分析师。您的主管希望计算全球前 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 并行编程
练习说明
- 使用提供的代码封装成函数
add_range(),该函数以文件路径为参数,并为该文件添加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
___