[R] Matlab inv() and R solve() differences
Stephan Kolassa
Stephan.Kolassa at gmx.de
Fri Jan 30 16:02:54 CET 2009
Hi Cleber,
there is no hard-and-fast "magic number" here. Ill-conditioning also
depends on what you are trying to do (inference? prediction?). The
condition number is only one of a number of conditioning/collinearity
diagnostics commonly used. Take a look at:
Golub, G. H., & Van Loan, C. F. (1996). Matrix Computations (3rd ed.).
Baltimore: Johns Hopkins University Press.
Belsley, D. A. (1991a). Conditioning Diagnostics: Collinearity and Weak
Data in Regression. New York, NY: Wiley.
Hill, R. C., & Adkins, L. C. (2001). Collinearity. In B. H. Baltagi
(Ed.), A Companion to Theoretical Econometrics (p. 256-278). Oxford:
Blackwell
HTH,
Stephan
Cleber Nogueira Borges schrieb:
> Hello,
>
> is there a upper limit to kappa value where I can consider a matrix
> well-conditioned?
>
>
> Cleber
>
>
>
> Kingsford Jones wrote:
>> I suppose the solution is unstable because x is ill-conditioned:
>>
>>
>>> x
>>>
>> [,1] [,2] [,3] [,4]
>> [1,] 0.133 0.254 -0.214 0.116
>> [2,] 0.254 0.623 -0.674 0.139
>> [3,] -0.214 -0.674 0.910 0.011
>> [4,] 0.116 0.139 0.011 0.180
>>
>>> cor(x)
>>>
>> [,1] [,2] [,3] [,4]
>> [1,] 1.0000000 0.9963557 -0.9883690 0.8548065
>> [2,] 0.9963557 1.0000000 -0.9976663 0.8084090
>> [3,] -0.9883690 -0.9976663 1.0000000 -0.7663847
>> [4,] 0.8548065 0.8084090 -0.7663847 1.0000000
>>
>>
>>> kappa(x)
>>>
>> [1] 2813.326
>>
>> hth,
>>
>> Kingsford Jones
>>
>> On Thu, Jan 29, 2009 at 7:00 PM, Joseph P Gray <jpgray at uwm.edu> wrote:
>>
>>> I submit the following matrix to both MATLAB and R
>>>
>>> x= 0.133 0.254 -0.214 0.116
>>> 0.254 0.623 -0.674 0.139
>>> -0.214 -0.674 0.910 0.011
>>> 0.116 0.139 0.011 0.180
>>>
>>> MATLAB's inv(x) provides the following
>>> 137.21 -50.68 -4.70 -46.42
>>> -120.71 27.28 -8.94 62.19
>>> -58.15 6.93 -7.89 36.94
>>> 8.35 11.17 10.42 -14.82
>>>
>>> R's solve(x) provides:
>>> 261.94 116.22 150.92 -267.78
>>> 116.22 344.30 286.68 -358.30
>>> 150.92 286.68 252.96 -334.09
>>> -267.78 =358.30 -334.09 475.22
>>>
>>> inv(x)*x = I(4)
>>> and solve(x)%*%x = I(4)
>>>
>>> Is there a way to obtain the MATLAB result in R?
>>>
>>> Thanks for any help.
>>>
>>>
>>> Pat Gray
>>>
>>> ______________________________________________
>>>
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
More information about the R-help
mailing list