how to add data into the cells of a cell array?

13 vues (au cours des 30 derniers jours)
Paolo Ottonelli
Paolo Ottonelli le 15 Jan 2020
Commenté : Paolo Ottonelli le 3 Fév 2020
Hi, I have a 3x1 cell Array X in which there are some data divided into 3 cells . I would like to add data to each cell in order to obtain an other cell array X1 that is in this way:
X={[2000:2001;2002];
[2003;2004;2005;2006;2007;2008];
[2010; 2011; 2012]}
X1={[2000:2001;2002;2003];
[2003;2004;2005;2006;2007;2008;2009;2010];
[2010; 2011; 2012]}
I wrote the following code but I would like to use indexing
X1={[X{1}(1):X{2}(1)];
[X{2}(1):X{3}(1)];
[X{3}(1):2019]}
  1 commentaire
dpb
dpb le 15 Jan 2020
You did use indexing; what is missing in your view?

Connectez-vous pour commenter.

Réponses (1)

Jyothis Gireesh
Jyothis Gireesh le 20 Jan 2020
I am assuming here that you want to create “X1” using the elements of the existing cell array “X”. The following code may be of help to you in achieving the desired result.
X1 = cell(3, 1);
X1 = {[X{1}; 2003]; [X{2}; 2009; 2010]; X{3}};
  1 commentaire
Paolo Ottonelli
Paolo Ottonelli le 3 Fév 2020
I solved in this way
function G=ver(X)
a=length(X);
G=cell(zeros);
if a>1
for i=1:(a-1)
G(i)={[X{i}(length(X{i})),(X{i+1}(1))]};
end
G=cellfun(@transpose,G','uniformOutput',false);
else
G={};
end

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by