开始使用免费开始使用

迭代并筛选

作为数据顾问,您会接收到各种形态和格式的数据。一位客户刚刚传来一个 40 GB 的 CSV 文件,包含全球高等院校的数据。

由于内存不足,初级分析师无法正确解析这些数据,而且也没有预算购买能处理整个数据集的计算资源。您当前只需要分析澳大利亚的院校。CSV 的文件路径已保存在变量 filepath 中。现请您实现一个高效的数据读取器。已为您加载 paralleldoParallelforeachiterators 包。

本练习是课程的一部分

R 并行编程

查看课程

练习说明

  • 使用迭代器从 filepath 按行读取。
  • 使用合适的函数合并结果以创建数据框。
  • 指定并行运算符。

交互式实操练习

通过完成这段示例代码来试试这个练习。

cl <- makeCluster(4)
registerDoParallel(cl)
# Use an iterator to read lines
foreach(l = ___,
        # Combine the lines as rows
        ___ = ___
        # Use the parallel operator
        ) ___ {
  line <- strsplit(l, ",")[[1]]
  if (line[4] == "Australia") {
    return(line)
  }
}

stopCluster(cl)
编辑并运行代码