[R]行列の階数を得る
QR分解を行う関数qrの戻り値に階数がある(rank)。これを使用する。
> d1 <- rep(1, 9)
> ma1 <- matrix(d1, nrow = 3, byrow = TRUE)
> ma1
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 1 1 1
[3,] 1 1 1
> qr(ma1)$rank
[1] 1
> d2 <- c(1,1,1,0,1,0,0,0,1)
> ma2 <- matrix(d2, nrow = 3, byrow = TRUE)
> ma2
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 0 1 0
[3,] 0 0 1
> qr(ma2)$rank
[1] 3
> d3 <- c(1,1,1,0,0,1,0,0,0)
> ma3 <- matrix(d3, nrow = 3, byrow = TRUE)
> ma3
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 0 0 1
[3,] 0 0 0
> qr(ma3)$rank
[1] 2
« [C#]三角関数の値の計算 | トップページ | [R]同点タイ有り順位をつける »
「R(数値計算)」カテゴリの記事
- [R]複数のパラメーターと定数を持つ関数の値が最大・最小となるパラメーターを求める(2026.03.30)
- [R]重み付き線形最小二乗法を行う(2026.03.20)
- [R]重み付き非線形最小二乗法を行う(2026.03.06)
- [R]計算機イプシロンを求める(2025.10.29)
- [R]複数の引数を持つ関数の値の最小値(最大値)を求める(2024.12.07)

コメント