Thanks for acting on my original quibble; I had never questioned whether the 
diagonal
was part of the lower triangle. However, I'm afraid I now have another related 
quibble.

Seeing as ?eigen says that if(symmetric) 'only its lower triangle is used', 
it's seems a
bit unfair of it to complain when there are NAs in the upper triangle. For 
example, when 
computing a covariance/distance matrix between a large number of individuals, 
one might
be tempted to only compute the lower.tri values and leave the upper.tri NA.

Do you see any justification for changing eigen() along the lines of

will.use <- if(symmetric) lower.tri(x, diag=TRUE) else TRUE
if (any(!is.finite(x[will.use])))
        stop("infinite or missing values in 'x'")
?

Thanks,

Dan

On Thu, Nov 29, 2007 at 05:46:38PM +0100, Martin Maechler wrote:
> >>>>> "DD" == Dan Davison <[EMAIL PROTECTED]>
> >>>>>     on Thu, 29 Nov 2007 11:34:18 +0000 writes:
> 
>     DD> from ?eigen
>     DD> symmetric: if 'TRUE', the matrix is assumed to be symmetric (or
>     DD> Hermitian if complex) and only its lower triangle is used. If
>     DD> 'symmetric' is not specified, the matrix is inspected for
>     DD> symmetry.
> 
> 
>     DD> I think that could mislead a naive reader as it suggests that, with 
> symmetric=TRUE,
>     DD> the result of eigen() (vectors and values) depends only on the 
> lower-triangular values, 
>     DD> and thus not on the values on the diagonal (that's not true for the 
> eigenvalues).
> 
> Well, that all depends on what you think when you read 
> "lower triangle".
> 
> For many of us, this can include the diagonal or not, and we
> don't know if it is not specified further.
> 
> ?lower.tri  -- shows the option to include the diagonal.
> 
> Consequently, I'd suggest to replace
> 
>        "only its lower triangle is used"
> with   "only its lower triangle (diagonal included) is used"
> 
> Martin Maechler, ETH Zurich
> 
>     DD> I suggest that changing it to 
> 
>     DD> "... and only its lower triangle is used when computing the 
> eigenvectors."
> 
>     DD> would be more accurate, perhaps even with a reminder about the trace 
> - sum of eigenvalues
>     DD> relationship.
> 
>     DD> Dan
> 
>     DD> ______________________________________________
>     DD> R-devel@r-project.org mailing list
>     DD> https://stat.ethz.ch/mailman/listinfo/r-devel

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to