How do I store cell arrays of the form name{n}.surname{s} to k(1)?

1 view (last 30 days)
Hi, I have cell arrays in the form of name{n}.surname{s}. I am want to store the all the names and surnames in a cell array such that k(1) will give the first name and surname, k(2) will give the second name and surname and so on. I am new to Matlab. Can anyone please help me out?
  2 Comments
Jan
Jan on 7 Mar 2017
Does "name{n}.surname{s}" mean, that "name" is a cell array containing structs? Or should the "." be a ","?

Sign in to comment.

Answers (2)

Jan
Jan on 7 Mar 2017
Edited: Jan on 7 Mar 2017
If the name and surname are two cell strings:
fullname = strcat(name, ' ', surname);
Now fullname{k} contains the full name. You do not need a loop, because strcat acceptes cell strings as inputs directly.

KSSV
KSSV on 7 Mar 2017
N = 10 ;
name = cell(N,1) ;
surname = cell(N,1) ;
for i = 1:N
name{i} = randseq(randsample(1:10,1)) ; % some random char
surname{i} = randseq(randsample(1:10,1)) ; % some random char
end
k = cell(N,1) ;
for i = 1:N
k{i} = [name{i},' ',surname{i}] ;
end
Can be vectorised, as you are a beginner, I gave you solution with loop.

Categories

Find more on Structures in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!