how to separate a matrix according to class labels?
2 ビュー (過去 30 日間)
古いコメントを表示
Hi everybody,
I have a matrix with size of 1500x3. Third column of the this matrix contains the class labes as a numeric like 3,2,1 and size of the each classes is uncertain. I want to divide the main matrix into three different matrices according to these three different classes. Only elements from class 1 will be taken in the first matrix, Only elements from class 2 will be taken in the second matrix, Only elements from class 3 will be taken in the third matrix.
0 件のコメント
回答 (1 件)
Guillaume
2020 年 3 月 7 日
classmatrices = splitapply(@(rows) {yourmatrix(rows, :)}, (1:size(yourmatrix, 1)'), yourmatrix(:, 3))
is one way. Note that in matlab it's rarely useful to do this splitting. It's often easier to work on the whole 1500x3 matrix and use aggregation functions such as groupsummary.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Get Started with MATLAB についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!