How to insert a cell with string into a table as variable

21 visualizzazioni (ultimi 30 giorni)
I have a cell B of 1x59 strings in it and i want to insert it into a table T as variable names
When am using the command
T.VariableNames.Properties = B; am getting the following error
"The VariableNames property is a cell array of character vectors. To assign multiple variable names, specify names in a
string array or a cell array of character vectors."
I checked multiple times by checking whether the cell is str from command iscellstr and it returns me 1.
Can anyone please help how to solve this problem
  1 Commento
Walter Roberson
Walter Roberson il 22 Apr 2021
You cannot use a cell array of strings. You need to use a cell array of character vectors, or you need to use a non-scalar string() array.

Accedi per commentare.

Risposta accettata

Stephan
Stephan il 22 Apr 2021
Modificato: Stephan il 22 Apr 2021
The solution is inside the error message:
  1. B is a cell array of strings
  2. specify names in a string array or
  3. cell array of character vectors
What you have is 1. and what you need is either 2. or 3.
A = {"Name1", "Name2", "Name3"}
A = 1×3 cell array
{["Name1"]} {["Name2"]} {["Name3"]}
A_new = [A{:}]
A_new = 1×3 string array
"Name1" "Name2" "Name3"
  7 Commenti
Sandeep Nair
Sandeep Nair il 23 Apr 2021
Thanks for the answers,i was able to find the solution i checked my cells with isvarname and some of the cells were having dots in between which i removed and now its working fine ,thanks
Walter Roberson
Walter Roberson il 23 Apr 2021
Variable names with dots in them are permitted, R2019b and later (if I remember correctly.) You did not happen to indicate which release you are using.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Cell Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by