在R中使用mapply
时我有一种担心,就是我可能搞砸参数的顺序&因此无意识地产生垃圾结果。
mydata<-data.frame(Temperature=foobar,Pressure=foobar2)
myfunction<-function(P,T)
{
....
}
mapply(FUN = myfunction,mydata$Temperature,mydata$Pressure)
有没有办法利用命名参数来通过mapply避免这种错误?
答案 0 :(得分:1)
如果我们需要匹配函数参数,请使用函数的参数命名Map/mapply
的参数
mapply(FUN = myfunction,T=mydata$Temperature,P=mydata$Pressure)
我们可以直接应用函数而不是mapply
(基于我在帖子中提供的示例)
do.call(myfunction, unname(mydata[2:1]))
mydata <- data.frame(Temperature = 1:5, Pressure = 16:20)
myfunction <- function(P, T) {P*5 + T*10}