lapply(makeCacheMatrix(a),solveCache)不能正常工作

时间:2015-05-20 20:57:15

标签: r lapply

我面临一个奇怪的问题。有人可以帮助我出错的地方。 我是R的菜鸟。我对lapply的了解是它在列表中应用了一个函数。

现在,当我这样做时,

lapply(makeCacheMatrix(a),solveCache)

它出错了

  

x $ getInverse中的错误:'closure'类型的对象不是子集表'

然而,当我这样做时,

m1<-makeCacheMatrix(a)
solveCache(m1)

它给了我正确的答案而没有错误。

m1&lt; - 确实是我通过模式(m1)检查的列表。因此,理想的lapply应该工作。

有人可以帮我解释为什么lapply(makeCacheMatrix(a),solveCache)会给出错误...我的意思是要么捕获makeCacheMatrix(a)的输出并将其传递给lapply,要么我直接传递它,它应该同时适用于例。

1 个答案:

答案 0 :(得分:0)

lapply(X, FUN, ...)将函数FUN应用于列表X的每个元素。看起来solveCache函数作为整体在列表上运行,而不仅仅是列表中的单个元素。