how to join the values of different cells in different columns in one cell ?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/743994/image.png)
0 commentaires
Réponse acceptée
Walter Roberson
le 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 commentaires
Walter Roberson
le 20 Sep 2021
T.Date = datetime(T.Year, T.Month, T.Day, T.Hour, T.Min, 0, 'Format', 'uuuuMMddHHmm');
Plus de réponses (1)
Simon Chan
le 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 commentaires
Voir également
Catégories
En savoir plus sur String Parsing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!