Add a matrix of strings

2 views (last 30 days)
alpedhuez
alpedhuez on 7 Dec 2020
Commented: Walter Roberson on 7 Dec 2020
% Add a matrix of zeros to host the dummy variables
dum=zeros(length(Month),length(set_of_month));
T=[table(Month) array2table(dum)];
will add a matrix of zeros. But I want to add a matrix of some strings like
--------------
United States
United States
Then how can one modify the above code?
**********
This is what I did:
dum=zeros(height(T),1)
dum1=num2cell(dum)
dum1(dum==0)={'US'}
T1=cell2table(dum1)
T=[T T1]

Accepted Answer

Walter Roberson
Walter Roberson on 7 Dec 2020
T = table(Month);
T.Country(:) = "United States";
or consider
T = table(Month);
T.Country(:) = categorical("United States");
  2 Comments
alpedhuez
alpedhuez on 7 Dec 2020
"Conversion to cell is not possible"
Walter Roberson
Walter Roberson on 7 Dec 2020
Month = randi(12, 7, 1);
T = table(Month);
T.Country(:) = "United States";
T
T = 7x2 table
Month Country _____ _______________ 1 "United States" 2 "United States" 5 "United States" 3 "United States" 3 "United States" 4 "United States" 4 "United States"
T2 = table(Month);
T2.Country(:) = categorical("United States");
T2
T2 = 7x2 table
Month Country _____ _____________ 1 United States 2 United States 5 United States 3 United States 3 United States 4 United States 4 United States
No problem -- not unless you already happened to have a table variable named Country; or unless you neglected to remove the table variables that resulted from your earlier experiments.

Sign in to comment.

More Answers (0)

Categories

Find more on Numeric Types in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!