执行矩阵乘法的正确方法

Correct way to perform matrix multiplication

我有一个简单的矩阵,想用 D 乘以 E,但出现错误:

D <- data.frame(X = c(1,1,-1,1), Y = c(1,-1,1,1), Z = c(1,1,1,-1))
E <- data.frame(X = c(-1,0,1), Y = c(-1,1,0), Z = c(1,1,1))
P <- D %*% E

Error in D %*% E : requires numeric/complex matrix/vector arguments

如何克服错误?这是简单的 3x4 和 3x3 矩阵乘法。感谢您的支持!

您必须将数据帧转换为矩阵:

D <- as.matrix(data.frame(X = c(1,1,-1,1), Y = c(1,-1,1,1), Z = c(1,1,1,-1)))
E <- as.matrix(data.frame(X = c(-1,0,1), Y = c(-1,1,0), Z = c(1,1,1)))
P <- D %*% E