Divide array into 3 parts

I have a matrix of size (N,3), where I want to divide this matrix into 3 matrices where matrix 1 is 70% of N, matrix 2 is 15% of N and matrix 3 is 15% of N. is there an easy way to perform this division?

回答 (1 件)

Image Analyst
Image Analyst 2022 年 1 月 15 日

0 投票

Maybe use this
% Create sample data.
N = 100
M = randi(9, N, 3)
% Split matrix up into parts.
[rows, columns] = size(M)
endingRows = round([0.7, 0.85] * rows)
m1 = M(1:endingRows(1), :);
m2 = M(endingRows(1)+1:endingRows(2), :);
m3 = M(endingRows(2) + 1 : end, :);
If you want, you could use randperm to randomize where the rows are taken from.

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

製品

リリース

R2019a

質問済み:

2022 年 1 月 15 日

回答済み:

2022 年 1 月 15 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by