How can I create table from matrix?

281 vues (au cours des 30 derniers jours)
Jhon Gray
Jhon Gray le 29 Mar 2018
Commenté : Walter Roberson le 26 Sep 2023
I have a matrix like this and I want to create a table with a specific heading of each column.
It should be like this below image:
How can it be done?please help anyone
  2 commentaires
Jhon Gray
Jhon Gray le 29 Mar 2018
thanks a lot

Connectez-vous pour commenter.

Réponses (2)

Navdha Agarwal
Navdha Agarwal le 20 Juin 2019
Suppose A is the matrix. You can convert it to the table using the following lines of code:
T = array2table(A);
% Default heading for the columns will be A1, A2 and so on.
% You can assign the specific headings to your table in the following manner
T.Properties.VariableNames(1:4) = {'Q25_1','Q25_2','Q25_3','Q25_4'}
  5 commentaires
Arthur Yip
Arthur Yip le 17 Sep 2021
RowNames
Walter Roberson
Walter Roberson le 26 Sep 2023
A = randi([-1 99], 12, 7); %some sample data
today = dateshift(datetime('now','format', 'hh:mm a'), 'start', 'day');
rt = today + hours(9:20).';
cn = dateshift(today, 'start', 'week') + caldays(0:6);
cn.Format = 'eeee';
dn = string(cn);
T = array2timetable(A, 'rowtimes', rt, 'VariableNames', dn);
T
T = 12×7 timetable
Time Sunday Monday Tuesday Wednesday Thursday Friday Saturday ________ ______ ______ _______ _________ ________ ______ ________ 09:00 AM 9 52 74 56 42 21 66 10:00 AM 0 83 24 75 3 59 91 11:00 AM 31 53 80 14 53 66 4 12:00 PM 69 22 72 9 16 67 9 01:00 PM 23 99 89 66 19 46 91 02:00 PM 56 36 56 69 18 72 44 03:00 PM 20 62 60 1 20 35 4 04:00 PM 89 9 63 42 14 32 63 05:00 PM 8 78 69 65 70 12 4 06:00 PM 17 98 17 56 98 69 52 07:00 PM 17 22 36 63 97 4 58 08:00 PM 93 61 90 10 66 58 71
It was deliberate that I use datetime operations to calculate the names of the days of the week, so that the day names will appear in whatever language is suitable for your area.
Note however, that if your region's "first day of the week" is monday instead of Sunday, then I do not know what order the days will come out as -- and I do not know what order the array happens to have its days in. You might need to circshift(dn) or something like that.

Connectez-vous pour commenter.


Yao Lionel
Yao Lionel le 26 Sep 2023
T.Properties.VariableNames={'Name1' , 'Name2', 'Name3', 'Name4'}

Catégories

En savoir plus sur Numeric Types 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!

Translated by