matlab – 从2d矩阵中随机选择和删除行

我有一个35×2的矩阵,包含用于单词记忆实验的刺激物.每次运行我的程序时,我需要随机抽取16个单元格,以便实验总是不同的.我已经设法使用datasample()来创建一个8×2矩阵,但我需要从35×2中删除它们以确保它们不会在两次试验中的第二次重新选择.我知道当细胞坐标已知时如何去除细胞;但不是每次随机选择它们.任何建议都会被感激地接受.

谢谢

黄绿色

最佳答案 Datasample返回它选择的索引.考虑一下

  m = rand(35,2);             % // test matrix
  [s i ] = datasample(m,8,1); % // s are the samples, i are their indices
   m(i,:) = [];               % // elimination of selected samples
点赞