2セットの関数を使用して行列を逆にしようとしています:-コードは:-(コメントはプロセスを説明しています)
## この関数は、逆行列をキャッシュできる特別な「行列」オブジェクトを作成します。
makeCacheMatrix <- function(x = matrix()) {
m <- NULL
set <- function(y){
x <<- y
m <<- NULL
}
get <- function() x
##solve function returns the inverse.
setInverse <- function(solve) m <<- solve
getInverse <- function() m
list(set = set, get = get, setInverse = setInverse, getInverse)}
この関数は、上記の makeCacheMatrix によって返される特別な「行列」の逆を計算します。逆行列が既に計算されている (そして行列が変更されていない) 場合、cacheSolve はキャッシュから逆行列を取得する必要があります。
cacheSolve <- function(x, ...) {
m <- x$getInverse()
if(!is.null(m)){
message("HEY HEY")
return(m)
}
data <- x$get()
m <- solve(data, ...)
x$setInverse(m)
m }
私は、a<-diag(2,2)
Then、1) cm<-makeCachedMatrix
、最後に 2)として定義されている行列 a に対してこれを実行しようとしていcacheSolve(cm)
ます。
番号 1 のステップは実行されますが、番号 2 には次のようなエラーがあります。
Error in cacheSolve(CachedMatrix) : attempt to apply non-function
これを修正する方法について何か考えはありますか? それは私には意味がありません。