appending an empty list
50 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello all,
my code:
list_rats = [];
append(list_rats, Cell.rat);
when Cell.rat is a string. it throws me:
Error using append (line 39) Wrong number of input arguments for obsolete matrix-based syntax.
What should I do?
Thanks in advance
2 commentaires
Jan
le 21 Oct 2015
What is the function "append"? Does this appear using MuPad? See: http://www.mathworks.com/help/symbolic/mupad_ref/append.html
Réponses (1)
Robert
le 21 Oct 2015
The behavior of append is specific to the data types input to it. For the basic types, you are probably better off using
list_rats = [];
a_new_list = [list_rats, Cell.rat];
% or
other_list = [list_rats; Cell.rat];
Also, if you indent your code (two spaces will do) when you type a question, answer, or comment, it will appear in a formatted code block as above.
2 commentaires
Robert
le 5 Nov 2015
You can append strings horizontally regardless of their length, i.e.
>> ['Hello,', ' ', 'World!']
ans =
Hello, World!
But because MATLAB arrays cannot be ragged, vertical concatenation of varying-length strings will produce an error.
>> ['Hello,'; ' '; 'World!']
Error using vertcat
Dimensions of matrices being concatenated are not consistent.
If you are trying to collect a list of strings without combining them into one string, you should try cell arrays.
>> {'Hello', ',', ' ', 'World!'}
ans =
'Hello' ',' ' ' 'World!'
>> {'Hello'; ','; ' '; 'World!'}
ans =
'Hello'
','
' '
'World!'
>> {'Hello', ','; ' ', 'World!'}
ans =
'Hello' ','
' ' 'World!'
Use docsearch cell-arrays to learn more.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!