gpt4 book ai didi

r - 如何包装一个接受标量的 R 函数,以便它接受一个向量?

转载 作者:行者123 更新时间:2023-12-02 00:05:52 24 4
gpt4 key购买 nike

我在 R 中有一个函数可以很好地接受标量值,但它不接受向量。

有没有办法在它上面放置一个包装器,所以这个包装器函数可以接受一个向量?

该函数本身有 5 个参数。

我试过的

我已经尝试了 sapply 的所有组合, lapplymapply我能想到,至少可以说,R 不断给出有些模糊的错误。

最佳答案

知道了。

原来的函数调用是:

result<-MyFunc(P=34,S=100,X=100,T=1)

方法一

要使其接受向量输入,只需添加 mapply在函数调用前转换第一个左括号 (变成逗号 , :
result<-mapply(MyFunc,P=34,S=100,X=100,T=1)

方法二

感谢@Roland,输入 ??Vectorize找到一个可以包装函数以使其接受向量的函数。
MyFuncOnVector <- Vectorize(MyFunc)
result <- MyFuncOnVector(P=34,S=100,X=100,T=1)

在幕后,Vectorize 正在调用 mapply .

关于r - 如何包装一个接受标量的 R 函数,以便它接受一个向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18419811/

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