Calling a Function From Another Function
Ältere Kommentare anzeigen
I created a function called table(data) which returns a matrix with labels from the data. I would like to try and create another function which can use table(data). The reason I would like to learn this is because if I create a new function it will have to be by using just data again. I would like to use the new created data in future functions and scripts.
This is what I though I would work which it didn't.
function []=food(table(data))
However, that doesn't work because it returns unbalanced or unexpected parenthesis or bracket.
5 Kommentare
Stephen23
am 8 Dez. 2017
"However, that doesn't work because it returns unbalanced or unexpected parenthesis or bracket."
No, that is just the error message. That doesn't work because you invented some syntax that is not permitted by MATLAB. Try doing the introductory tutorials, which explain how to call functions correctly:
MATLAB has very easy to read documentation which is easy to search using your favorite internet search engine: you obviously did not read anything about how to define functions or call functions, because the syntax that you invented is not shown anywhere in the MATLAB documentation.
Note that learning any programming language by guessing is very inefficient and will just waste your time.
Rafael
am 8 Dez. 2017
Greg
am 8 Dez. 2017
@Rafael, sadly, you aren't wrong.
per isakson
am 8 Dez. 2017
The statement "I created a function called table(data) which returns a matrix" confuses me.
T = table( data );
returns a table object, not a matrix. Thus I assumed that you had used the name table for your own function.
"I read that page, although it doesn't show me what I want to learn. Is not even including ''functions'' in their tutorial."
This is the first page returned when I searched for "MATLAB functions":
It took me 0.5 seconds to locate.
Antworten (1)
per isakson
am 8 Dez. 2017
Bearbeitet: per isakson
am 8 Dez. 2017
M = table_1( data );
food( M );
or
food( table_1( M ) );
The two line construct is easier to debug
where
function food( m )
% m is a numerical matrix
...
end
8 Kommentare
Rafael
am 8 Dez. 2017
per isakson
am 8 Dez. 2017
Bearbeitet: per isakson
am 8 Dez. 2017
table is just another data type - the syntax is the same. I edited my answer accordingly.
Rafael
am 8 Dez. 2017
per isakson
am 8 Dez. 2017
What do you mean by the word "table"?
Rafael
am 8 Dez. 2017
@Rafael: do not use table as the name of your function. It shadows the inbuilt function table, and confuses everyone because they think that you are talking about the table data type.
TIP: before using any function/variable name you should check if it is already used by calling which with that name.
Rafael
am 8 Dez. 2017
per isakson
am 8 Dez. 2017
I changed my answer back to the original one, which shows the syntax you are asking for.
Kategorien
Mehr zu Deep Learning Toolbox finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!