2012-03-28 76 views

回答

2

您可以使用sapply来评估一组值的功能。

x <- seq(-1,1,length=20) 
y <- sapply(x, function(a) mean(log(1+a*r))) 
plot(x,y, type="l") 

或者,你可以定义一个函数来计算这个量 并使用curve来绘制。 函数必须被矢量化。

r <- runif(100) 
f <- function(a) mean(log(1+a*r)) 
f <- Vectorize(f) 
curve(f, xlim=c(-1,1), las=1) 
+0

文森特你是R的国王:) – emanuele 2012-03-28 09:38:20

+0

我该如何处理两个数据集r'和r''以及两个参数a,b? 即均值(log(1 + a * r'+ b * r''))vs a,b – emanuele 2012-04-05 16:28:34

+0

要绘制两个变量的函数,您可以使用'persp','image','contour' 或'grid'包中的'levelplot','contourplot')。 要构建数据,可以使用'outer'和'Vectorize'。 – 2012-04-05 22:26:40