Is there something wrong with the matrix-inversion function in J601v?
 Remember that for any matrix z, the ranks of z and z'z are the same.

 Here's some data:

1 1.058 1.11936 1.11936 1.18429 1.25298
1 1.088 1.18374 1.18374 1.28791 1.40125
1 1.086  1.1794  1.1794 1.28082 1.39097
1 1.122 1.25888 1.25888 1.41247 1.58479
1 1.186  1.4066  1.4066 1.66822 1.97851
1 1.254 1.57252 1.57252 1.97194 2.47281
1 1.246 1.55252 1.55252 1.93443 2.41031
1 1.232 1.51782 1.51782 1.86996 2.30379
1 1.298  1.6848  1.6848 2.18688 2.83856
1  1.37  1.8769  1.8769 2.57135 3.52275
1 1.439 2.07072 2.07072 2.97977 4.28789
1 1.479 2.18744 2.18744 3.23523  4.7849
1 1.474 2.17268 2.17268 3.20252 4.72052
1 1.503 2.25901 2.25901 3.39529 5.10312
1 1.475 2.17563 2.17563 3.20905 4.73334

read it into J as a numeric matrix, z.
Note that columns 2 and 3 are identical.

Now compute:

mp =. +/ . *  NB. matrix product
zp =. |: z NB. transpose
zpz =. zp mp z  NB. z'z

Since this does not have full rank, the inverse matrix
does not exist.  But

%. zpz

produces a result. Why? I read my matrix z into
a statistics package and went through the same steps
there: the package refused to compute the inverse
reporting (correctly) that the matrix was singular.

The Dictionary page for %. says that for a non-singular
matrix, mondaic %. computes the inverse. There's no
mention of what happens if the matrix is singular; one
would assume that some sort of failure would be reported, no?






------------------------
Philip A. Viton
City Planning, Ohio State University
275 West Woodruff Avenue, Columbus OH 43210
[EMAIL PROTECTED]

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to