How to save multiple 2D arrays in a third dimension in simulink?

8 visualizaciones (últimos 30 días)
Mariana
Mariana el 26 de Abr. de 2020
Respondida: Samatha Aleti el 30 de Abr. de 2020
I will be reading multiple 2D arrays of the same size (100, 8) in time. The idea is to concatenate all of them in a 3D array.
How can implement this in simulink?
  3 comentarios
madhan ravi
madhan ravi el 27 de Abr. de 2020
Sindars code can be encapsulated in the function block in SIMULINK.
Mariana
Mariana el 29 de Abr. de 2020
I am not sure on how to save them. I have multiple 2D arrays and I would like to save only the arrays that have a 1 in the last column.
I am receiving matrixes that have the same size but witth values non zero and zero. I would like to save into a 3D array all the 2D arrays with no zero values. Each one of them found concatenated into the 3rd dimension.
I am not sure how to implement it.

Iniciar sesión para comentar.

Respuestas (1)

Samatha Aleti
Samatha Aleti el 30 de Abr. de 2020
Hi,
You can accordingly place a condition for concatenating each 2D array to a 3D array. Here is a sample code(modified code of Sindar's):
N = 10; % Let Num of 2D arrays
my3Darray=zeros(100,8,N);
for ind=1:10
my2Darray = randi(50,100,8);
my3Darray(:,:,ind) = my2Darray;
% check for "1" in last column and remove concatenation of 2D array if there is no "1"
if all(my2Darray(:,end) ~= 1)
my3Darray(:,:,ind) = [];
end
end

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by