2015-09-07 39 views
1

我想同时应用all.equal几个对象。适用all.equal几个对象

我最初的代码如下:

all.equal(1,1.01, tolerance = 1e-1) 

这是做这件事的一种方法:

objs <- mget(c(1,1.01,1.02)) 
outer(objs, objs, Vectorize(all.equal)) 

,但我无法弄清楚如何将公差声明。

有什么想法?

+0

我在运行'mget'行时出错。我不确定你想做什么,但也许是这样?:'sapply(x,FUN = function(x){all.equal(1,x,tolerance = 1e-1)})'where'x = c(1,1.01,1.02)' – pcantalupo

+0

也许this - >'外部(objs,objs,FUN =函数(a,b,toler){mapply(function(x,y){all.equal(x,y ,toler)},a,b)},toler = 1e-1)' – digEmAll

+0

这是正确的 – ulrich

回答

0

这是怎么回事?

vec = c(1,1.01,1.02) 
all(abs(diff(vec)) <= 0.01 + .Machine$double.eps)