select random row inside the cell

2 次查看(过去 30 天)
A={[1,4,6;6,5,4;1,2,4],[1,3;5,4],[1,2;1,7;6,8]};
number_of_choosen_row=1;
choosen_row=cellfun( @(m) datasample( m,number_of_choosen_row,'replace',false ), A, 'uni',false);
I want to chose random row inside a cell. but above code does not give me correct result.
for example result should be choosen_row={[3],[1],[1]}

采纳的回答

Jos (10584)
Jos (10584) 2019-4-5
编辑:Jos (10584) 2019-4-5
You want the row, or the row number to be returned?
A={[1,4,6;6,5,4;1,2,4],[1,3;5,4],[1,2;1,7;6,8]}
rownumber = cellfun(@(c) randperm(size(c, 1), 1), A)
row = cellfun(@(c) c(randperm(size(c, 1), 1), :), A, 'un', 0)

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by