我有一个数据集/矩阵 A,具有以下功能:
A = [
2 3 6 2 2;
5 3 5 6 2;
4 5 6 5 2;
6 4 3 2 0;
2 3 6 2 0;
5 3 5 6 0;
4 5 6 5 2;
6 4 3 2 2;
2 3 6 2 2;
5 3 5 6 2
];
在最后一列中,我具有2和0条目。我想根据最后一列中的条目2、0和2,将matrix
A分成3种不同的垃圾。
请问您能提出一些有效的方法吗?
请您尽快答复我。
答案 0 :(得分:2)
我假设期望的结果是一个(子)矩阵的单元格数组:
B = mat2cell(A, diff([0; find([diff(A(:,end)); 1])]), size(A,2));
对于您的示例A
,这给出了
>> celldisp(B)
B{1} =
2 3 6 2 2
5 3 5 6 2
4 5 6 5 2
B{2} =
6 4 3 2 0
2 3 6 2 0
5 3 5 6 0
B{3} =
4 5 6 5 2
6 4 3 2 2
2 3 6 2 2
5 3 5 6 2