how to vertically cascade a string vector and a numerica matrix

a={'time','channel1','channel2','channel3'}; b=[ 1 2 3 5; 4 2 6 7; 8 5 1 9; 3 2 4 6; 7 6 0 8]; how to vertically cascade the two, so the first row is a, and b has the same column number (4)?

 Réponse acceptée

Steven Lord
Steven Lord le 23 Mar 2016
Consider creating a table using the contents of the cell array as the variable names and the matrix as the data.

1 commentaire

I tried T=array2table(b,'VariableNames',a) and got the following time channel1 channel2 channel3 __ ______ ______ ______
1 2 3 5
4 2 6 7
8 5 1 9
3 2 4 6
7 6 0 8

Connectez-vous pour commenter.

Plus de réponses (1)

Guillaume
Guillaume le 23 Mar 2016
Modifié(e) : Guillaume le 23 Mar 2016
If tables as per Steven Lord's suggestion don't work for you then:
c = [a; num2cell(b)]
I'd recommend going with a table though.

1 commentaire

c = [a; num2cell(b)]
c =
'time' 'channel1' 'channel2' 'channel3'
[ 1] [ 2] [ 3] [ 5]
[ 4] [ 2] [ 6] [ 7]
[ 8] [ 5] [ 1] [ 9]
[ 3] [ 2] [ 4] [ 6]
[ 7] [ 6] [ 0] [ 8]
looks a little weird, Thanks!
I'm creating a big data for someone, who requested the name be put on top, I didn't know it's not straightforward.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Genomics and Next Generation Sequencing dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by