R 积分为正值

R 积分为正值,r,integration,R,Integration,我想把一个函数和,我只想把我函数的正值结合起来: 我试过: f<-function(x) return(sin(10*x)) integrate(f[f>0],-pi,pi) f0],-pi,pi) 但就像我预料的那样,它不起作用。 我该怎么办? 谢谢解决方案 f=函数(x)返回(ifelse(sin(10*x)>0,sin(10*x),0)) 积分(f,-pi,pi) #2,绝对误差0时,我们可以安全地将f重新定义为您感兴趣的函数,否则将其设置为f(x)=0。很好的解决

我想把一个函数和,我只想把我函数的正值结合起来: 我试过:

f<-function(x) return(sin(10*x))    
integrate(f[f>0],-pi,pi)
f0],-pi,pi)
但就像我预料的那样,它不起作用。 我该怎么办? 谢谢

解决方案
f=函数(x)返回(ifelse(sin(10*x)>0,sin(10*x),0))
积分(f,-pi,pi)
#2,绝对误差<7.7e-05
解释
函数f(x)=0的(定)积分始终为0,因此它不会添加到结果中。因此,当原始
f
>0
时,我们可以安全地将
f
重新定义为您感兴趣的函数,否则将其设置为f(x)=0。

很好的解决方案!!
f = function(x) return(ifelse(sin(10*x) > 0, sin(10*x), 0))    
integrate(f, -pi, pi)
#2 with absolute error < 7.7e-05