Identify & Removing Linear Dependent row/s

조회 수: 11 (최근 30일)
Ethan Maxey
Ethan Maxey 2022년 2월 13일
댓글: Ethan Maxey 2022년 2월 13일
How can I print this matrix so that it finds and prints on the screen a column of the matrix that can be deleted so that the remaining columns still span R4?
Matrix = [10,-7,1,4,6;-8,4,-6,-10,-3;-7,11,-5,-1,-8;3,-1,10,12,12]
Matrix = 4×5
10 -7 1 4 6 -8 4 -6 -10 -3 -7 11 -5 -1 -8 3 -1 10 12 12
A=[10,-7,1,4,6;-8,4,-6,-10,-3;-7,11,-5,-1,-8;3,-1,10,12,12];
%rref(A) I'm not sure how this rref would work but I know I would need an if conditional.
I can't figure out how to remove the specific column based on if it is linearly dependent/independent.
  댓글 수: 3
Image Analyst
Image Analyst 2022년 2월 13일
Which column do you want to delete? Just do
Matrix(:, 4) = []; % Delete column 4.
What do you mean by "still span R4"? For this 2-D Matrix, what is R4? What is your expected output?
Ethan Maxey
Ethan Maxey 2022년 2월 13일
I would like the result to print the matrix without the linearly dependent column(s). R4 is the rank. It is determined by the maximum number of linearly independent columns.
The issue is I am not allowed to hard code it by just removing column 4, it has to work with any given matrix to remove the linearly dependent column(s).

댓글을 달려면 로그인하십시오.

채택된 답변

Voss
Voss 2022년 2월 13일
How about this?
Matrix = [10,-7,1,4,6;-8,4,-6,-10,-3;-7,11,-5,-1,-8;3,-1,10,12,12]
Matrix = 4×5
10 -7 1 4 6 -8 4 -6 -10 -3 -7 11 -5 -1 -8 3 -1 10 12 12
[~,p] = rref(Matrix)
p = 1×4
1 2 3 5
removed_column_idx = setdiff(1:size(Matrix,2),p)
removed_column_idx = 4
removed_columns = Matrix(:,removed_column_idx)
removed_columns = 4×1
4 -10 -1 12
reduced_Matrix = Matrix(:,p)
reduced_Matrix = 4×4
10 -7 1 6 -8 4 -6 -3 -7 11 -5 -8 3 -1 10 12

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by