caichao 有两个函数,f2需要用到f1的表达式(请看下面,f1也许会很长) >f1<-function(x){2*x^2+3} >f2<-function(x){x*f1} #???? >integrate(f2, 20,100) Error in x * f1 : non-numeric argument to binary operator 请问,f2该怎么写才可以调用到f1的表达式? 谢谢
caichao 谢谢回复。我可能没说清楚。f1 f2必须分开写。因为两个函数都要积分,但范围不一样。 f1<-function(x){2*x^2+3} f2<-function(x){x*f1} #???? integrate(f1, 20, 80) integrate(f2, 20,100) 有什么方法可以不用把f1的表达式在f2里重写一遍?
caichao 回复 第4楼 的 iscott: f1没有问题。是不是写f2的时候必须重写一遍f1的表达式(2*x^2+3)? f2<-function(x){x*(2*x^2+3)} 或 f2<-function(x){z=2*x^2+3;x*z} 我的问题是怎么才能把f1直接代进来? 比如写成 f2<-function(x){x*f1},但这样写会报错。