move data in randomly

1 view (last 30 days)
Takim Mustakim
Takim Mustakim on 7 Sep 2021
Commented: Takim Mustakim on 8 Sep 2021
suppose I have a 1 x 10 matrix : [ 1 3 2 5 4 7 6 9 8 0] and want to move it to A and B how to randomly move the dataset by generating output percentages of 60 A and 40 B.
Example output : A : [ 1 2 5 7 8 0 ] and B : [ 3 4 6 9 ]

Answers (1)

Image Analyst
Image Analyst on 8 Sep 2021
See this well commented solution:
% Create sample data.
v = [ 1 3 2 5 4 7 6 9 8 0]
% Find out how many values we need to send to A.
numIndexes = round(0.6 * length(v))
% Get random indexes.
AIndexes = randperm(length(v), numIndexes);
% Extract those indexes from v and put them into a new vector called A
A = v(AIndexes)
% Whatever is in v that is not already in A, put those into B using setdiff()
B = setdiff(v, A)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!