Identify & Removing Linear Dependent row/s

9 vues (au cours des 30 derniers jours)
Ethan Maxey
Ethan Maxey le 13 Fév 2022
Commenté : Ethan Maxey le 13 Fév 2022
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 commentaires
Image Analyst
Image Analyst le 13 Fév 2022
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 le 13 Fév 2022
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).

Connectez-vous pour commenter.

Réponse acceptée

Voss
Voss le 13 Fév 2022
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
  1 commentaire
Ethan Maxey
Ethan Maxey le 13 Fév 2022
Works perfectly! Thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by