矩阵的秩怎么求:初等行变换化阶梯形的步骤
更新于
矩阵的秩怎么求,最稳的做法是用初等行变换把矩阵化成行阶梯形,数其中非零行的个数,这个数就是秩。行变换只有三种:交换两行、某行乘一个非零常数、某行加上另一行的倍数,三种都保持秩。下面给出化阶梯形的顺序与判定标准,再用三道例题逐步演示,第三道是含参数的矩阵,要按参数取值分情况讨论。
化行阶梯形的顺序与判定
化阶梯形按列推进,每一列做三件事:
- 选主元:在当前列、当前行以下找一个非零元,必要时交换两行把它换到最上面;首元是 1 或 −1 的行优先,能少算分数。
- 消下方:用主元所在行的倍数,把它下面同一列的元素全部消成 0。
- 下移一格:去掉已处理的行与列,对剩下的子矩阵重复前两步,直到剩下的行全为零或没有列可处理。
化完之后按两条标准检查是否真是行阶梯形:零行都在最下面;每个非零行的首个非零元(主元)所在的列,严格位于上一行主元的右边。两条都满足,数非零行即可;主元可一次跨过好几列,例 1 就是这样。
还有一个现成的上限可以当检查:m×n 矩阵的秩至多是 m 与 n 中较小的那个。算出的秩超过这个数,一定是哪一步抄错了行。动笔前也可先扫一眼原矩阵:有两行成比例,或某一行等于另外几行之和,化完必定出现零行,秩一定小于行数。

例 1、例 2:数非零行
例 1:求 A 的秩,A 的三行依次是 (1, −1, 2, 1)、(2, −2, 5, 3)、(−1, 1, −1, 0)。
第二行减去第一行的 2 倍,得 (0, 0, 1, 1);第三行加上第一行,得 (0, 0, 1, 1)。第二列在第一行以下已全是 0,主元直接跳到第三列;再用第三行减去第二行,第三行变成全零,两步变换见下方公式图。
非零行 2 行,r(A)= 2。主元在第 1、3 列,第 2 列没有主元,说明第 2 列可由左边的主元列线性表示(这里左边只有第 1 列,即第 1 列的倍数),原矩阵里一眼可核对:第 2 列恰好是第 1 列的 −1 倍。

例 2:求 4×3 矩阵 B 的秩,B 的四行依次是 (1, 2, 0)、(0, 1, 1)、(2, 3, −1)、(1, 0, 1)。
第三行减去第一行的 2 倍得 (0, −1, −1),第四行减去第一行得 (0, −2, 1)。以第二行为主元行:第三行加第二行得 (0, 0, 0),第四行加第二行的 2 倍得 (0, 0, 3)。把全零行换到最下面,得到非零行 (1, 2, 0)、(0, 1, 1)、(0, 0, 3),r(B)= 3,正好达到上限 min(4, 3)=3,说明 B 的三列线性无关。
例 3:含参数矩阵的秩要分情况
例 3:矩阵 A 的三行是 (1, 1, a)、(1, a, 1)、(a, 1, 1),讨论 a 取不同值时 r(A)。
第二行减第一行得 (0, a−1, 1−a);第三行减去第一行的 a 倍得 (0, 1−a, 1−a²)。再把第三行加上第二行,第三列变成 1−a+1−a²,因式分解为 (1−a)(2+a)。化到这步,三行依次是 (1, 1, a)、(0, a−1, 1−a)、(0, 0, (1−a)(2+a))。
先停下,三种情况逐一讨论,每种都回到原矩阵核对:
- a=1:三行都是 (1, 1, 1),第二、三行化成零行,r(A)= 1。
- a=−2:第三行为零,第二行是 (0, −3, 3) 非零,r(A)= 2;原矩阵三行相加恰好为零向量,可作验证。
- a≠1 且 a≠−2:三个主元都非零,r(A)= 3。


常见错误对照
| 错误 | 后果 | 改法 |
|---|---|---|
| 没化到阶梯形就数非零行 | 两行成比例却各算一行,秩数大了 | 按两条标准检查后再数 |
| 用 a−1 去除某一行 | a=1 时这一步是除以 0,不成立,会漏掉 a=1 的情况 | 先因式分解,含参数的主元留到最后讨论 |
| 同一步里两行互相加减 | 实际做了一次不可逆的变换 | 每步只让一行变化,写清 r₂−2r₁ |
| 把主元位置当成秩 | 例 1 主元在第 3 列,秩仍是 2 | 秩只看非零行的个数 |
同一套行变换也是求逆矩阵的工具:把单位阵拼在右边一起变,左边化成单位阵时右边就是逆矩阵。
在编辑器里记下每一步变换
行变换的草稿最怕回头查时分不清哪一步做了什么。在本站公式编辑页把公式工具栏右端的「LaTeX / 可视化」开关切到「LaTeX」,矩阵用 pmatrix,元素之间用 &、行末用 \\;每一步变换写在箭头上方,两步同时做时用 \xrightarrow[r_3+r_1]{r_2-2r_1} 把第二个操作放到箭头下方。
录完切到「可视化」模式,按行对照草稿里的数字;矩阵行列对齐的更多写法见 矩阵书写。
先录例 3 的讨论:化简后的矩阵一行,三种情况用 cases 环境各占一行,核对后从「导出」选「导出 LaTeX (.tex)」,把源码存进课程笔记;这项导出要登录并开通本站会员。
延伸阅读
常见问题
- 列变换也能用来求秩吗?
- 能。初等列变换同样不改变矩阵的秩,行列混用、只用列变换,数出来的秩都一样。但同一张阶梯形如果还要拿来解方程组、求逆矩阵或写基础解系,就只能用行变换,因为列变换会打乱未知量的顺序。习惯上求秩也只用行变换,一张草稿能接着做后面几问。