appending an empty list
18 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Jan
il 21 Ott 2015
What is the function "append"? Does this appear using MuPad? See: http://www.mathworks.com/help/symbolic/mupad_ref/append.html
Risposte (1)
Robert
il 21 Ott 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 Commenti
Robert
il 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.
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!