Различные результаты для обратной матрицы

У меня есть матрица 5 на 5:

t <- read.table(header=FALSE, 
text=" 1    0   0   -0.0000009038   0
0   1   0   0.0000000000    0
0   0   1   0.0000000000    0
0   0   0   1.0000000000    0
0   0   0   0.0000000000    1
")         

Когда я пытаюсь взять обратную эту матрицу, я получаю разные результаты с

tt <- solve(t)

и

tt <- 1/(t)

Почему? Разве они оба не должны работать?


person MoonS    schedule 11.11.2020    source источник
comment
1/t не является обратной матрицей. это довольно элементно взаимно. то же самое в математике, если у вас есть функция f(x), то 1/f(x) не является обратной матрицей   -  person Onyambu    schedule 11.11.2020


Ответы (1)


1/t не является обратной матрицей. Это довольно элементно взаимно. То же самое и в математике: если у вас есть функция f(x), то 1/f(x) не является обратной матрицей.

Обратите внимание, что даже в математике обратная матрица никогда не записывается как 1/A, если A — матрица.

В R. Обратная матрица вычисляется как solve(A)

person Onyambu    schedule 11.11.2020
comment
А, спасибо. Но у меня есть другая матрица 5 на 5: 785434 0 0 0 0 0 894783 0 0 0 0 0 0 0 0 0 0 0 16595944 0 0 0 0 0 0wheresolve(A) не работает. Там написано, что эта матрица сингулярна, но как может быть, если вышеприведенная матрица работала нормально? Разве они не обладают одинаковыми свойствами? - person MoonS; 12.11.2020
comment
@JohannaH нет, у них разные свойства. Вы не можете найти вложенную сингулярную матрицу. Т.е. если определитель матрицы равен 0, или, проще говоря, если какое-либо из собственных значений матрицы равно нулю, то матрица является сингулярной, поэтому вы не можете найти ее обратную. Пожалуйста, посмотрите в Google, как найти, например, обратную матрицу 2 × 2. - person Onyambu; 12.11.2020