代码之家  ›  专栏  ›  技术社区  ›  Vassilis Chasiotis

R中含有特征元的矩阵的行列式

  •  1
  • Vassilis Chasiotis  · 技术社区  · 6 年前

    x1 <- c("x", "y")
    x2 <- c("z", "w")
    X <-data.frame(x1,x2)
    A=as.matrix(X)
    

    A

          x1  x2 
    [1,] "x" "z"
    [2,] "y" "w"
    

    我怎样才能找到 A ? 我想要这样的结果 xw-yz

    我试过了 det(A)

    一般来说,我希望能够找到任何元素是字符型矩阵的行列式。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Sandipan Dey    6 年前

    您需要一个符号计算库:

    library(rSymPy)
    
    x1 <- List(Var("x"), Var("y"))
    x2 <- List(Var("z"), Var("w"))
    A = Matrix(x1, x2)
    Det <- function(x) Sym("(", x, ").det()")
    Det(A)
    # [1] "w*x - y*z"
    
    x <- Var("x") 
    y <- Var("y") 
    z <- Var("z")
    A = Matrix(List(y+z,z,y), List(z,z+x,x), List(y,x,x+y))
    Det(A)
    # [1] "4*x*y*z"
    
    a <- Var("a") 
    b <- Var("b") 
    c <- Var("c")
    A = Matrix(List(0,b-a,c-a), List(a-b,0,c-b), List(a-c,b-c,0))
    Det(A)
    # [1] "0"