Я пытаюсь сделать макрос с объектом в выражении функции.Может быть, это звучит странно.Я попытаюсь объяснить это с помощью кода.
Я сделал оператор функции с кодом ниже.
ols.fun<-function(x,y){
middle.fun<-lm(outcome~x1+x2+x3,data=x)
predict(middle.fun,y)}
Объект в 'ols.fun', который представляет собой x и y, является списком снесколько рядов.Например, я сделал 5 строк с функцией data.frame.
> variable<-data.frame(x=paste0("trainset",1:5), y=paste0("testset",1:5))
> variable
x y
1 trainset1 testset1
2 trainset2 testset2
3 trainset3 testset3
4 trainset4 testset4
5 trainset5 testset5
Я хочу поместить каждый x, y в ols.fun.Я использовал лакомство, как показано ниже.Однако это не сработало.
> lapply(variable,ols.fun)
Show Traceback
Rerun with Debug
Error in eval(predvars, data, env) : object 'outcome' not found
Буду очень признателен, если вы дадите мне знать, как решить эту проблему.