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.

1 件のコメント

Kurt
Kurt 2022 年 11 月 30 日
I could do all of this with a for loop, but I prefer not to.

サインインしてコメントする。

 採用された回答

Voss
Voss 2022 年 11 月 30 日

0 投票

% 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 件のコメント

Kurt
Kurt 2022 年 11 月 30 日
Thanks! There's always a simple solution out there, somewhere.
Voss
Voss 2022 年 11 月 30 日
編集済み: Voss 2022 年 11 月 30 日
You're welcome!
Bright
Bright 2023 年 10 月 6 日
what if you try
filetext.var2 = MET
Dyuman Joshi
Dyuman Joshi 2023 年 10 月 6 日
@Bright, why don't you try and see?

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

製品

リリース

R2022b

質問済み:

2022 年 11 月 30 日

コメント済み:

2023 年 10 月 6 日

Community Treasure Hunt

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

Start Hunting!

Translated by