Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R中的和函数_R - Fatal编程技术网

R中的和函数

R中的和函数,r,R,我想计算一个简单的求和,但不是从1到我在求和函数中输入的值,而是像我在数学中通常做的那样求和,我有一个表达式,它有一些变量,然后我从1:4改变,然后假设R对表达式值求和 像 如何在R中执行此操作?您差点就完成了,只需将3:5直接传递到y: > y <- function(x) x**2 > sum(y(3:5)) [1] 50 >y和(y(3:5)) [1] 50 预先将值分配给x,然后对函数结果求和。所以像这样: y=函数(x)x^2 x=3:5 求和(y(x))您可以创建

我想计算一个简单的求和,但不是从1到我在求和函数中输入的值,而是像我在数学中通常做的那样求和,我有一个表达式,它有一些变量,然后我从1:4改变,然后假设R对表达式值求和


如何在R中执行此操作?

您差点就完成了,只需将
3:5
直接传递到
y

> y <- function(x) x**2
> sum(y(3:5))
[1] 50
>y和(y(3:5))
[1] 50

预先将值分配给x,然后对函数结果求和。所以像这样:

y=函数(x)x^2
x=3:5

求和(y(x))

您可以创建自定义函数:

mysum <- function(f,vals) sum(f(vals))
mysum(y,3:5)
# [1] 50

如果函数不接受向量,则需要使用apply函数。在R基中:

y <- function(x) x^2
sum(sapply(1:4, y))
sapply(list(sqrt=sqrt,log=log,sin=sin),mysum,vals=1:3)
#     sqrt      log      sin 
# 4.146264 1.791759 1.891888 
y <- function(x) x^2
sum(sapply(1:4, y))
sum(Vectorise(y)(1:4))