[R-es] factorización QR

Carlos Ortega cof en qualityexcellence.es
Lun Oct 6 14:56:04 CEST 2014


http://rosettacode.org/wiki/QR_decomposition
----------------------
R <http://rosettacode.org/wiki/Category:R>

# R has QR decomposition built-in (using LAPACK or LINPACK)

a <- matrix(c(12, -51, 4, 6, 167, -68, -4, 24, -41), nrow=3, ncol=3, byrow=T)
d <- qr(a)
qr.Q(d)
qr.R(d)

# now fitting a polynomial
x <- 0:10
y <- 3*x^2 + 2*x + 1

# using QR decomposition directly
a <- cbind(1, x, x^2)
qr.coef(qr(a), y)

# using least squares
a <- cbind(x, x^2)
lsfit(a, y)$coefficients

# using a linear model
xx <- x*x
m <- lm(y ~ x + xx)
coef(m)




----------------------

El 6 de octubre de 2014, 14:48, José Miguel Contreras García <
jmcontreras en ugr.es> escribió:

> Hola a todos
>
> Una duda con la función qr
> La factorización QR de una matriz A dará dos matrices, una Q ortogonal y
> un R triangular superior. Pero todas las funciones y paquetes que encuentro
> dan una matriz qr que no es ninguna de ellas. ¿En qué me equivoco? ¿Cómo
> consigo las dos matrices?
>
> Por ejemplo:
> > A<-matrix(c(1,2,3,2,1,3,2,1,1), 3)
> > qr(A)$qr->kk
>
>
> > t(kk)%*%kk
>          [,1]      [,2]     [,3]
> [1,] 14.92857 14.009965 6.651530
> [2,] 14.00997 14.111441 7.614529
> [3,]  6.65153  7.614529 6.000000
> > kk%*%t(kk)
>           [,1]       [,2]       [,3]
> [1,] 29.571429 -8.8457246 -1.9996028
> [2,] -8.845725  3.3809524 -0.3550511
> [3,] -1.999603 -0.3550511  2.0876314
>
> No es ortogonal ni triangular
>
>
>
> Saludos
>
> --
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>



-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es