how to vertically cascade a string vector and a numerica matrix

12 Ansichten (letzte 30 Tage)
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)?

Akzeptierte Antwort

Steven Lord
Steven Lord am 23 Mär. 2016
Consider creating a table using the contents of the cell array as the variable names and the matrix as the data.
  1 Kommentar
Tina Zhao
Tina Zhao am 23 Mär. 2016
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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Guillaume
Guillaume am 23 Mär. 2016
Bearbeitet: Guillaume am 23 Mär. 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 Kommentar
Tina Zhao
Tina Zhao am 23 Mär. 2016
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.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by