是否有內建函數可以刪除Matlab中矩陣矩陣的第K行和第列?在Matlab中剔除矩形矩陣的部分
希望它從圖中清晰:
alt text http://img121.imageshack.us/img121/8145/cutmatrix.png
是否有內建函數可以刪除Matlab中矩陣矩陣的第K行和第列?在Matlab中剔除矩形矩陣的部分
希望它從圖中清晰:
alt text http://img121.imageshack.us/img121/8145/cutmatrix.png
這裏有兩個簡單的解決方案:
x([1:k-1 k+1:end],[1:k-1 k+1:end])
或者:
x(k,:)=[];x(:,k)=[];
不是內置函數,但是下面一行的伎倆:
y = [x(1:(k-1),1:(k-1)) x(1:(k-1),(k+1):end) ; x((k+1):end,1:(k-1)) x((k+1):end,(k+1):end)];
如果要更頻繁地使用此操作,創建函數是個不錯的主意。
% filename: removeK.m
function M1 = removeK (M, k)
M1 = M([1:k-1 k+1:end],[1:k-1 k+1:end]);
end
@Ramashalanka - 你的第一行比我的優雅得多。我感到很傻,我沒有看到我自己。 – mtrw 2010-03-05 00:25:35