how to create matrix with multiple column vectors?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have to create channel matrix for 16 users. each column contains information about channel of particular user.my matrix size will be 128x16
3 commentaires
Stephen23
le 21 Fév 2018
"I have combine all 128x1 column vectors into single matrix for further implementation"
Storing them in one array right from the very beginning would be simpler, neater, and more efficient: most like this could be achieved using some basic indexing. Keep data together as much as possible always makes processing that data simpler.
Réponses (1)
Pawel Jastrzebski
le 21 Fév 2018
Modifié(e) : Pawel Jastrzebski
le 21 Fév 2018
Regarding 'information about channel of particular user':
- Is it all numerical values?
- Is it mixed data i.e. channel 1 holds a number and channel two a text?
In case 1, you can use a solution as simple as matrix or table to store your information.
Consider the following example:
NoOfUsers = 16;
NoOfChannels = 128;
% 1) MATRIX
% create an empty matrix
M_UserChannel(NoOfChannels,NoOfUsers) = 0;
% 2) TABLE
T_UserChannel = array2table(M_UserChannel);
% CREATE COLUMN NAMES and ROW NAMES
% preallocate memory for the user names
users{1,NoOfUsers} = [];
for i=1:NoOfUsers
users{1,i} = ['user' num2str(i)];
end
clear i;
% preallocate memory for the channel names
rows{1,NoOfChannels} = [];
for i=1:NoOfChannels
rows{1,i} = ['channel' num2str(i)];
end
T_UserChannel.Properties.VariableNames = users;
T_UserChannel.Properties.RowNames = rows;
clear i rows users;
If the data is mixed, you can still use Matlab's table to store the information, on condition that:
- Users are stored in rows
- Channel information is stored in column (as columns within one table can hold data of various types - as long as you stick to one data type per column)
Voir également
Catégories
En savoir plus sur Matrix Indexing 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!