我对Matlab很陌生,虽然我可能只是迭代地这样做,但我想知道使用可能的内置Matlab功能最干净的方法是什么。
我有一个.mat文件,其中包含一个大小为150x4的特征矩阵X和一个大小为150x1的类标签矢量Y.在Matlab中读取并将矩阵X划分为每个类别组的单独矩阵的惯用方法是什么?
答案 0 :(得分:1)
在Matlab中使用find函数。以下是一个例子:
index = find(Y==somevalue);
subX = X(index,:);
答案 1 :(得分:0)
所以这是我想出来的最佳方式。
,如果有人知道一种更好的方式,就像一些内置功能可以完成所有这些,那就更好了。[row_size feature_size] = size(X_train);
classes = unique(Y_train);
grouped_data = cell(length(classes),1);
for i=1:length(classes)
label_indices = find(Y_train==classes(i));
grouped_data{i} = X_train(min(label_indices):max(label_indices),:);
end