How to save multiple 2D arrays in a third dimension in simulink?
Afficher commentaires plus anciens
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 commentaires
I'm not familiar with simulink, but in Matlab:
my3Darray = cat(3,my2Darray1,my2Darray2,<etc.>);
or, while making them:
my3Darray=zeros(100,8,10);
for ind=1:10
my2Darray = rand(100,8); % or however you read them
my3Darray(:,:,ind) = my2Darray;
end
madhan ravi
le 27 Avr 2020
Sindars code can be encapsulated in the function block in SIMULINK.
Mariana
le 29 Avr 2020
Réponses (1)
Samatha Aleti
le 30 Avr 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
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!