Comment créer des cellules de tableau dans MATLAB et initialiser tous les éléments pour le même objet?
J'ai une matrice (appeler X
) qui est initialisé à dire zero(3)
.
Je veux changer le code de sorte que X
est une matrice de cellules de taille (disons) (3,1)
et initialiser chaque élément de zero(3)
.
Je peux le faire avec une boucle, mais est-il un meilleur moyen?
X = cell(3,1);
for ii=1:numel(X)
X{ii} = zeros(3);
end
OriginalL'auteur s5s | 2011-11-19
Vous devez vous connecter pour publier un commentaire.
Vous pouvez faire cela avec
deal()
.X
existe déjà. Par exemple, si elle a été définie comme ceci avant[X{1:4, 1}] = deal(zeros(4))
OriginalL'auteur John Colby
Une autre façon:
un autre:
OriginalL'auteur Amro
Et encore une autre façon:
Cette solution utilise le fait que vous pouvez affecter à des indices qui se trouvent au-delà de l'variables de taille. Matlab se développe automatiquement dans ce cas.
De la même façon:
OriginalL'auteur Dennis Jaheruddin