R中矩陣的QR分解

2021-06-26 14:13:06 字數 1290 閱讀 7800

qr分解是常用的三種矩陣分解方法之一,qr分解經常用

來解線性最小二乘法

問題,有如下定義:

1).若n階實非奇異矩陣a可以分解為正交矩陣q與實非奇異上三角矩陣r的乘積,即a=qr,則稱該分解式為矩陣a的qr分解;

2).進而a是m*n列滿秩矩陣,若a=qr,其中q是m*n矩陣, q'q=i(稱q為列正交矩陣), r為非奇異上三角矩陣,也稱為矩陣a的qr分解。

這個例子將乙個列滿秩的矩陣進行qr分解,同時又通過qr分解結果還原矩陣,主要是涉及到對於qr分解的學習。

本例中的資料temp.csv如下:

a,b,c,d

71,74,92,79

77,73,62,70

80,84,95,88

78,83,82,88

75,82,96,77

66,84,70,79

70,83,66,70

78,84,70,29

72,87,78,49

79,85,79,80

r中qr分解的**:

inputdata 

inputdata

qrresult

#能進行qr分解的矩陣必須列列滿秩或行滿秩(轉置為列滿秩)

if (rankmatrix(inputdata) == min(dim(inputdata)))

else

qreslt

rreslt

xreslt

qr分解結果:qr物件(包含了q和r的資訊):qrresult,通過qr物件求取的q矩陣(正交矩陣):qresult,通過qr物件求取的r矩陣(上三角矩陣):rresult,以及通過qresult和rresult還原的原矩陣。

參考:

[1]李建東.矩陣qr分解的三種方法.呂梁高等專科學校學報,2009:25(1).

矩陣分解(2)QR分解

qr分解法是三種將矩陣分解的方式之一。這種方式,把矩陣分解成乙個半正交矩陣與乙個上三角矩陣的積。qr分解經常用來解線性最小二乘法問題。qr分解也是特定特徵值演算法即qr演算法的基礎。實數矩陣a的qr分解是把a分解為 這裡的q是正交矩陣 意味著qtq i 而r是上三角矩陣。類似的,我們可以定義a的ql...

matlab中qr函式 QR分解

實數矩陣a的qr分解是把a分解為 a qr 這裡的q是正交矩陣 意味著qtq i 而r是上三角矩陣。類似的,我們可以定義a的ql,rq和lq分解。更一般的說,我們可以因數分解複數m n矩陣 有著m n 為 m n 酉矩陣 在q q i的意義上 和n n上三角矩陣的乘積。如果a是非奇異的,則這個因數分...

線性代數 15 矩陣的QR分解

實現qr分解 矩陣的qr分解和lu分解的目的都是為了便於矩陣計算。a q ra qr a qr 這一過程將矩陣分解為q qq和r rr兩部分,其中q qq是標準正交矩陣,r rr是乙個上三角矩陣。矩陣的qrqr qr分解能夠簡化計算可以以線性系統的計算為例,a x b q r x bax b lon...