Borrar filtros
Borrar filtros

Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

Fill matrix randomely without row-repetitions

2 visualizaciones (últimos 30 días)
JB
JB el 5 de Jun. de 2017
Cerrada: MATLAB Answer Bot el 20 de Ag. de 2021
Please help. I'm new to matlab scripting and need a bit of help. I have a series of numbers:
A=[1 1 1 2 2 2 3 3 3 4 4 4 5]
which I wants to fill randomely into a 8x12 matrix without having the same number in the same row. At the end I want all the "empty" cells of the 8x12 matrix being filled with 0's or nan.
An example could be:
result=
3 1 5 2 4 5 0 0 0 0 0 0
4 1 3 2 0 0 0 0 0 0 0 0
1 3 4 2 0 0 0 0 0 0 0 0

Respuestas (1)

Andrei Bobrov
Andrei Bobrov el 6 de Jun. de 2017
A = [1 1 1 2 2 2 3 3 3 4 4 4 5];
result = nan(8,12);
result(1:numel(A)) = A;
[~,ii] = sort(rand(8,12),2);
result = result(bsxfun(@plus,(ii - 1)*8,(1:8)'));
result = result(randperm(8),:)

La pregunta está cerrada.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by