r - R编程中,关于逆矩阵及其乘法

标签 r matrix-inverse

这是我在[R初学者指南]练习中的求解过程

> Q
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    4    2    1
[3,]    2    3    0
> solve(Q)
      [,1]  [,2]  [,3]
[1,] -0.12  0.36 -0.16
[2,]  0.08 -0.24  0.44
[3,]  0.32  0.04 -0.24
> solve(Q)%*%Q
     [,1]          [,2] [,3]
[1,]    1 -2.775558e-17    0
[2,]    0  1.000000e+00    0
[3,]    0  0.000000e+00    1

我想知道为什么我不能得到单位矩阵应该出来的正确答案。

最佳答案

对最终结果使用zapsmall 函数。由于浮点表示和舍入误差,除了简单算术(甚至有时)之外的任何内容都将导致非常接近的值,但与预期不完全相同。在这种情况下,您会看到一个值,该值在小数点后第一个非零数字之前有 16 个 0。 zapsmall 函数会将这些小值(本质上是 0)转换为 0,以便您所看到的与您期望的相符。

关于r - R编程中,关于逆矩阵及其乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15575240/

相关文章:

matlab - 如何在 Matlab 中反转矩阵矩阵?

c++ - 简单的 3x3 矩阵逆代码 (C++)

html - 使用 htmlTable 更改表标题颜色

r - OpenNLP 包中的错误 - 数据帧强制

r - *apply 中单元函数组合的最短 lambda 表达式

r - 将向量复制到矩阵r

R - 从环境中的多个变量中获取值

python - 在 numpy 或 scipy 中左逆?

ios - 使用 Accelerate Framework 在 Swift 中进行矩阵求逆

python - Python : Why do I get error message when I try to calculate the inverse of my 2x2-matrix (Hessian)?