det计算矩阵的行列式

简介:
矩阵的行列式, 指正方矩阵的行列式.
计算方法参考 : 
如图 : 
det计算矩阵的行列式 - 德哥@Digoal - PostgreSQL research
 对于简单的2阶和3阶的矩阵,行列式的表达式相对简单,而且恰好是每条主对角线(左上至右下)元素乘积之和减去每条副对角线(右上至左下)元素乘积之和(见图中红线和蓝线)。
2阶矩阵的行列式
det计算矩阵的行列式 - 德哥@Digoal - PostgreSQL research

3阶矩阵的行列式
det计算矩阵的行列式 - 德哥@Digoal - PostgreSQL research

在R中使用det可以迅速的得到矩阵的行列式的值.  
需要注意矩阵必须是正方矩阵.
> x <- matrix(1:12,3,4)
> x
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
> det(x)
Error in determinant.matrix(x, logarithm = TRUE, ...) : 
  'x' must be a square matrix
> x <- matrix(1:16,4,4)
> det(x)
[1] 0
> x
     [,1] [,2] [,3] [,4]
[1,]    1    5    9   13
[2,]    2    6   10   14
[3,]    3    7   11   15
[4,]    4    8   12   16
> det(t(x))
[1] 4.733165e-30
> t(x)
     [,1] [,2] [,3] [,4]
[1,]    1    2    3    4
[2,]    5    6    7    8
[3,]    9   10   11   12
[4,]   13   14   15   16


[参考]
1.  http://zh.wikipedia.org/wiki/%E8%A1%8C%E5%88%97%E5%BC%8F
2. > help(det)
det                    package:base                    R Documentation

Calculate the Determinant of a Matrix

Description:

     ‘det’ calculates the determinant of a matrix.  ‘determinant’ is a
     generic function that returns separately the modulus of the
     determinant, optionally on the logarithm scale, and the sign of
     the determinant.

Usage:

     det(x, ...)
     determinant(x, logarithm = TRUE, ...)
     
Arguments:

       x: numeric matrix: logical matrices are coerced to numeric.

logarithm: logical; if ‘TRUE’ (default) return the logarithm of the
          modulus of the determinant.

     ...: Optional arguments.  At present none are used.  Previous
          versions of ‘det’ allowed an optional ‘method’ argument.
          This argument will be ignored but will not produce an error.

Details:

     The ‘determinant’ function uses an LU decomposition and the ‘det’
     function is simply a wrapper around a call to ‘determinant’.

     Often, computing the determinant is _not_ what you should be doing
     to solve a given problem.

Value:

     For ‘det’, the determinant of ‘x’.  For ‘determinant’, a list with
     components

 modulus: a numeric value.  The modulus (absolute value) of the
          determinant if ‘logarithm’ is ‘FALSE’; otherwise the
          logarithm of the modulus.

    sign: integer; either +1 or -1 according to whether the determinant
          is positive or negative.

Examples:

     (x <- matrix(1:4, ncol = 2))
     unlist(determinant(x))
     det(x)
     
     det(print(cbind(1, 1:3, c(2,0,1))))

目录
相关文章
|
1月前
10x10 矩阵
【10月更文挑战第26天】10x10 矩阵。
14 2
|
7月前
玩转矩阵
玩转矩阵
对角矩阵(Diagonal Matrix)
对角矩阵(Diagonal Matrix)是一种特殊的矩阵,其元素仅位于主对角线上。对角矩阵通常用于线性代数和微积分等数学领域,它有以下几个特点:
753 7
|
算法 Python
线代矩阵问题
线代矩阵问题
118 0
【线性代数】求矩阵的特征值、特征向量和协方差矩阵
线性代数基础知识:求矩阵的特征值、特征向量和协方差矩阵
【线性代数】求矩阵的特征值、特征向量和协方差矩阵
方阵的特征值与特征向量
方阵的特征值与特征向量
330 0
|
Windows
详解扬氏矩阵
详解扬氏矩阵
183 0
详解扬氏矩阵
|
机器学习/深度学习
矩阵相关练习
矩阵相关练习
矩阵相关练习
20天刷题计划-542. 01 矩阵
给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。