我有阵列" A"值:
101 101
0 0
61.6320000000000 0.725754779522671
73.7000000000000 0.830301150185882
78.2800000000000 0.490917508345341
81.2640000000000 0.602561200211232
82.6880000000000 0.435568593909153
我希望删除第一行并保留数组的形状(2列),从而创建数组
0 0
61.6320000000000 0.725754779522671
73.7000000000000 0.830301150185882
78.2800000000000 0.490917508345341
81.2640000000000 0.602561200211232
82.6880000000000 0.435568593909153
我使用了A = A(A~=101);
,它会根据需要删除值 - 但是它会将数组打包到一列。
答案 0 :(得分:5)
最好的方法是:
A = A(2:end, :)
但你也可以
A(1,:) = []
然而效率略低(见Deleting matrix elements by = [] vs reassigning matrix)
如果您要删除等于某个数字的行,请尝试
A = A(A(:,1)~=101,:)
如果要删除行,如果全部或任何列等于您的值,请使用all
或any
:
A = A(all(A~=101,2),:)