gpt4 book ai didi

r - 矢量化()与应用()

转载 作者:行者123 更新时间:2023-12-04 00:19:17 25 4
gpt4 key购买 nike

Vectorize()apply() R 中的函数通常可以用来完成相同的目标。出于可读性原因,我通常更喜欢对函数进行向量化,因为主要调用函数与手头的任务相关,而 sapply不是。 Vectorize()也很有用当我要在我的 R 代码中多次使用该向量化函数时。例如:

a <- 100
b <- 200
c <- 300
varnames <- c('a', 'b', 'c')

getv <- Vectorize(get)
getv(varnames)

对比
sapply(varnames, get)

但是,至少在 SO 上,我很少看到带有 Vectorize() 的示例。在解决方案中,只有 apply() (或其中一个 sibling )。 Vectorize() 是否存在任何效率问题或其他合法问题?使 apply()更好的选择?

最佳答案

Vectorize只是 mapply 的包装器.它只是为您打造一个 mapply为您提供的任何函数循环。因此,通常有比 Vectorize() 更容易做的事情。它和显式 *apply解决方案最终在计算上等效或可能更优。

此外,对于您的具体示例,您听说过 mget , 对?

关于r - 矢量化()与应用(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25081604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com