开始使用免费开始使用

对 chunk.apply 的调用进行并行化

chunk.apply() 函数也可以利用并行进程来更快地处理数据。当在 Linux 和 Unix 机器(包括 Mac)上将 CH.PARALLEL 参数设置为大于 1 的值时,多个进程会同时读取并处理数据,从而缩短执行时间。在 Windows 上会忽略 CH.PARALLEL 参数。

本练习是课程的一部分

R 的可扩展数据处理

查看课程

练习说明

  • 对函数 iotools_read_fun() 进行基准测试,先使用 1 个进程,然后使用 3 个并行进程。

交互式实操练习

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

iotools_read_fun <- function(parallel) {
    fc <- file("mortgage-sample.csv", "rb")
    readLines(fc, n = 1)
    chunk.apply(fc, make_msa_table,
                CH.MAX.SIZE = 1e5, CH.PARALLEL = parallel)
    close(fc)
}

# Benchmark the new function
microbenchmark(
    # Use one process
    ___, 
    # Use three processes
    ___, 
    times = 20
)
编辑并运行代码