基于随机值的Matlab去行

基于随机值的Matlab去行,matlab,matrix,row,Matlab,Matrix,Row,我有矩阵 A = [1 2;2 2;3 3;4 3;5 3;6 3;7 2;8 3;9 2;10 2;11 3;12 3;13 2;14 2;15 3] 我需要从A中随机删除10行 我正在使用此代码: for i = 1:10 x = randi([2 3],1); A(any(A==x,2),:)=[]; end 所以A只剩下五行。 非常感谢您。如果您想随机删除15行中的10行,您需要删除要删除的行: num_to_remove = 10; idx = randsamep

我有矩阵

A = [1 2;2 2;3 3;4 3;5 3;6 3;7 2;8 3;9 2;10 2;11 3;12 3;13 2;14 2;15 3]
我需要从
A
中随机删除10行
我正在使用此代码:

for i = 1:10
    x = randi([2  3],1);
    A(any(A==x,2),:)=[];
end
所以
A
只剩下五行。
非常感谢您。

如果您想随机删除15行中的10行,您需要删除要删除的行:

num_to_remove = 10;
idx = randsameple( size(A,1), num_to_remove );
A(idx,:) = [];  % remove the sampled rows
您只需确保
size(A,1)>=num\u来删除


PS,

最好不要使用
i

我认为
randsample
可能有点过分了
randsample
来自统计和机器学习工具箱,有几个选项在这里没有使用。调用将完成相同的事情,并附带香草MATLAB。