How do I remove any Column in a matrix
21 ビュー (過去 30 日間)
古いコメントを表示
Please what is wrong with this function. I want it to remove 'n' column form the matrix A
function B = column_removal(A,n)
A1= A(:,1:n-1) % Index from column 1 to column 'n-1'
A2 = A(:,n+1:end) % Index from column 'n+1' to the last co1umn
B = [A1 A2] % concatenate A1 & A2 by which the n column would have been removed
end
4 件のコメント
採用された回答
Matt J
2021 年 1 月 14 日
編集済み: Matt J
2021 年 1 月 14 日
Nothing is wrong with the code you've posted, but it would be simpler to do,
B=A(:,[1:n-1,n+1:end]);
or, slightly less efficiently,
B=A;
B(:,n)=[];
8 件のコメント
Image Analyst
2021 年 1 月 14 日
And Walter of course!
You can accept the Answer below to give ercan "credit" for helping you in terms of "reputation points". Thanks in advance.
その他の回答 (1 件)
ercan duzgun
2021 年 1 月 14 日
Dear Cutie,
Your MATLAB function already works fine. However, Matt J's solution is simpler.
I checked your MATLAB function by this example below, and I received the expected result.
X=[1 2 3 4 5 6; 10 20 30 40 5 60;100 200 300 400 500 600]
column_removal(X,3)
A1 =
1 2
10 20
100 200
A2 =
4 5 6
40 5 60
400 500 600
ans =
1 2 4 5 6
10 20 40 5 60
100 200 400 500 600
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!