使用条件将矩阵中的某些列保存到新列中

时间:2016-06-22 11:26:30

标签: matlab

我有这个包含列的矩阵。

61.09   126.1   0.95252 1
43.26   761.71  0.97846 2
40.38   1506.4  0.98107 2
39.79   1892.1  0.98351 3
39.11   2865.4  0.98563 3
38.27   4159.3  0.9874  4

我只想在第四列等于2的情况下保存到新的矩阵第1列和第3列。

e.g。 newMatrix = [43.26 0.97846; 40.38 0.98107]

你能帮我吗?

2 个答案:

答案 0 :(得分:2)

做这样的事情

idx = (A(:,4)==2);
A_new = A(idx,[1,3]);

答案 1 :(得分:2)

%% Your data
matrix_1 = [61.09   126.1   0.95252 1;
43.26   761.71  0.97846 2;
40.38   1506.4  0.98107 2;
39.79   1892.1  0.98351 3;
39.11   2865.4  0.98563 3;
38.27   4159.3  0.9874  4];

%% Indices of column 4 = 2
idx = matrix_1(:,4) == 2;

%% Create new matrix with condition
new_matrix = matrix_1(idx, [1,3]);