For non-square matrices, see qr and svd.
Spencer
On 4/12/2011 8:43 AM, Doran, Harold wrote:
There are easier solutions. Suppose you have a matrix A, such as:
### Use the info from lm() help
ctl<- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt<- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group<- gl(2,10,20, labels=c("Ctl","Trt"))
weight<- c(ctl, trt)
lm.D9<- lm(weight ~ group)
A<- model.matrix(lm.D9)
L<- chol(crossprod(A))
all.equal(crossprod(L), crossprod(A))
[1] TRUE
I think this answers your remaining two questions below as ewll.
-----Original Message-----
From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] On
Behalf Of Shawn Koppenhoefer
Sent: Tuesday, April 12, 2011 11:11 AM
To: r-help@r-project.org
Subject: Re: [R] B %*% t(B) = R , then solve for B
Importance: High
Hello.
I found a solution that may interest others.
Recall that my problem was how to use R to decompose a matrix into the
product of a matrix and its transpose. or, symbolically:
For known matrix M (3x3 matrix) and unknown matrix F and its
transpose t(F)
where F * t(F) = M
determine F
The solution using R seems to be :
U=eigen(M)$vectors
D=diag(x=eigen(M)$values)
F=U %*% sqrt(D)
But now I have two new questions:
1. How can I find a solution where F is a triangular matrix.
2. How can I find solutions to non-square matrices?
/shawn
p.s. Here's a numerical example that demonstrates the above.
> M
[,1] [,2] [,3]
[1,] 0.6098601 0.2557882 0.1857773
[2,] 0.2557882 0.5127065 -0.1384238
[3,] 0.1857773 -0.1384238 0.9351089
> U=eigen(M)$vectors
> D=diag(x=eigen(M)$values)
> F=U %*% sqrt(D)
> *F %*% t(F)*
[,1] [,2] [,3]
[1,] 0.6098601 0.2557882 0.1857773
[2,] 0.2557882 0.5127065 -0.1384238
[3,] 0.1857773 -0.1384238 0.9351089
[[alternative HTML version deleted]]
______________________________________________
R-help@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.
______________________________________________
R-help@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.
--
Spencer Graves, PE, PhD
President and Chief Operating Officer
Structure Inspection and Monitoring, Inc.
751 Emerson Ct.
San José, CA 95126
ph: 408-655-4567
______________________________________________
R-help@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.