gpt4 book ai didi

r - 如何从向量中为函数指定多个参数?

转载 作者:行者123 更新时间:2023-12-01 23:57:01 25 4
gpt4 key购买 nike

假设 f 是一个可以接受不同数量参数的函数。我有一个向量 x,其条目用作 f 的参数。

x=c(1,2,3) 
f(x[], otherarguments=100)

x 的条目作为参数传递给 f 的正确且简单的方法是什么?谢谢!

例如

我要转换

t1 = traceplot(output.combined[1])
t2 = traceplot(output.combined[2])
t3 = traceplot(output.combined[3])
t4 = traceplot(output.combined[4])
grid.arrange(t1,t2,t3,t4,nrow = 2,ncol=2)

类似于

tt=c()
for (i in 1:4){
tt[i] = traceplot(output.combined[i])
}
grid.arrange(tt[],nrow = 2,ncol=2)

最佳答案

这里有一个选项:

我假设你有这个函数,并且你想“矢量化”x,y,z 参数:

ss <- 
function(x,y,z,t=1)
{
x+y+z*t
}

您可以将它包装在一个函数中,使用向量作为 (x,y,z) 的参数,并使用“...”作为其他 ss 参数:

ss_vector <- 
function(vec,...){
ss(vec[1],vec[2],vec[3],...)
}

现在你可以这样调用它了:

 ss_vector(1:3,t=2)
[1] 9

相当于:

 ss(1,2,3,t=2)
[1] 9

关于r - 如何从向量中为函数指定多个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23151396/

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