create a variable and specify its column
    8 views (last 30 days)
  
       Show older comments
    
Suppose I have a table
day           temperature
1/1/2020      30
I want to create a vaiable 'month" from 'day' and put it next to 'day' like
day      month temperature
1/1/2020 1     30
Please advise. 
2 Comments
  the cyclist
      
      
 on 28 Jun 2020
				For you future reference, it is better to actually show what you have via MATLAB syntax (or actually uploading the data). Otherwise, we need to guess about the formats of everything.
Specifically, is day a string, a character array, or a datetime?
Accepted Answer
  the cyclist
      
      
 on 28 Jun 2020
        % Create the table
day = datetime('1/1/2020');
temperature = 30;
T = table(day,temperature);
% Derive month from day
T.month = month(day);
% Rearrange the columns
T = T(:,[1 3 2])
0 Comments
More Answers (1)
  Gaganjyoti Baishya
      
 on 28 Jun 2020
        Hi 
You can get the month from the day string by iterating it till you get the month.
for i=1:size
if day(i)=='/'
    if day(i+2)=='/'
        month=day(i+1);
    else
        month=day(i+1) + day(i+2)    %char concatenate
    end
    break;
end
month gives the required value of month. You just need to put it in the column.
See Also
Categories
				Find more on Tables 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!

