On Sun, 17 May 2009 christoph.klein(a)stud.uni-karlsruhe.de wrote:

> for my diploma thesis I need to do an estimation of an ols
> system which has not the same number of entries as my dataset.
> The data is stored within a matrix... I tried to solve the
> problem with an own implementation of the ols regression:
>
> <script>
> function olsRegression(matrix y, matrix x)
>       matrix coff=inv(x'*x)*x'*y
>
>       return matrix coff
> end function
> </script>
>
> The problem here is: if the data is not well behaved, x'*x
> cannot be inverted. Did I miss anything in docs? Does anyone of
> you have code doing ols with QR or SVD decomposition? The code
> needs to run often, so calling out to R would slow down the
> whole program to much.

Use the built-in function "mols" (see /Help/Function reference).
This function uses Cholesky decomposition by default, but switches
to QR if X'X is near-singular (since gretl 1.8.0).  You can also
do

 set svd on

to ask gretl to use SVD for the mols function.

Allin Cottrell

Reply via email to