Filter löschen
Filter löschen

making new objocts out of the content of a cell vector

1 Ansicht (letzte 30 Tage)
Birgit
Birgit am 18 Okt. 2012
Hello!
I am everything else than an expert in Matlab, but I hope that my explanation still makes sense to you. My problem is the following:
I have a vector that looks like this:
B = {'USA' 'GER' 'JAP'...}'; (it is actually 110 country codes
now I want to assign each country code a number like: USA = 1; GER = 2; JAP = 3; ... (keeping the same order as in the vector)
Is there a quick way of doing this?? I would be very glad if I don't have to write 110 country codes by hand!
Thaaaaank you very much!!

Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 18 Okt. 2012
It sounds like you might want to use a containers.Map object.
doc containers.Map
And an example:
cm = containers.Map({'USA';'GER';'JAP'},[1;2;3]);
And a sanity check, is 'USA' number 1?
cm('USA')
You betcha!

Weitere Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 18 Okt. 2012
B = {'USA' 'GER' 'JAP'}
B=[B;num2cell(1:numel(B))]

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by