how to join the values of different cells in different columns in one cell ?
4 views (last 30 days)
Show older comments
Is there a way that might allow me to combine several columns of a table in one column and put the values of their cells together in one cell. for example I have the table shown below, the first five columns are for the year, month, day, hour, minute. Would I be able to join them all together in one column such that the values would have such representation: 19961211720 where 1996 is the year, 12 is the month, 1 is the day , 17 is the hour and 20 is the minute.
anyone can help?
0 Comments
Accepted Answer
Walter Roberson
on 20 Sep 2021
T.Date = datetime(T.Year, T.Month, T.Day, T.Hour, T.Min, 0, 'Format', 'uuuuMMddhhmm');
Note: I did not use the format you asked for. You asked for a single digit for the day, but I used two digits for the day. Even in the case where you might happen to know that only a single digit will ever be used, using a single digit is non-standard and makes things harder to understand all around.
3 Comments
Walter Roberson
on 20 Sep 2021
T.Date = datetime(T.Year, T.Month, T.Day, T.Hour, T.Min, 0, 'Format', 'uuuuMMddHHmm');
More Answers (1)
Simon Chan
on 20 Sep 2021
Suppose you read the file using function readtable and the name of the table is T, then variable C in the following will give you the required format.
format longG
Ncol = 5;
A=table2array(T(:,1:Ncol));
B=compose(repmat('%d',1,Ncol),A);
C=str2double(B)
0 Comments
See Also
Categories
Find more on Data Type Conversion 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!