How to initialize a table column to a character array?

7 Ansichten (letzte 30 Tage)
Kurt
Kurt am 30 Nov. 2022
Kommentiert: Dyuman Joshi am 6 Okt. 2023
I have a table "filetext" which is 19343x46. I want to append a colum on the right containing the character array 'MET'. In other words, 19343 rows of the characters 'MET'. How do I do this? I have tried various approaches.
I created a column that is the same height as filetext:
met = [height(filetext),1];
Then I tried populating it with 'MET'
met(1:height(filetext),1) = 'MET';
but I get the error message
"Unable to perform assignment because the size of the left side is 19393-by-1 and the size of the right side is 1-by-3."
If this was a simple zero initialization I could just do:
filler = zeros(height(filetext),1);
but I don't know how to do this for characters.

Akzeptierte Antwort

Voss
Voss am 30 Nov. 2022
% a table:
filetext = table([1;2;3;4;5;6])
filetext = 6×1 table
Var1 ____ 1 2 3 4 5 6
% append a column of all 'MET' on the right:
filetext{:,end+1} = 'MET'
filetext = 6×2 table
Var1 Var2 ____ ____ 1 MET 2 MET 3 MET 4 MET 5 MET 6 MET
  4 Kommentare
Bright
Bright am 6 Okt. 2023
what if you try
filetext.var2 = MET
Dyuman Joshi
Dyuman Joshi am 6 Okt. 2023
@Bright, why don't you try and see?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by