How TABLE retreive the variable names?

This example from the doc shows table is able to retrieve the variable names of the iput arguments list and uses them as column name:
LastName = {'Sanchez';'Johnson';'Li';'Diaz';'Brown'};
Age = [38;43;38;40;49];
Then
T = table(LastName,Age)
I get
T =
5×2 table
LastName Age
_________ ___
'Sanchez' 38
'Johnson' 43
'Li' 38
'Diaz' 40
'Brown' 49
For
T = table(LastName,Age+1)
I get
T =
5×2 table
LastName Var2
_________ ____
'Sanchez' 39
'Johnson' 44
'Li' 39
'Diaz' 41
'Brown'
My question is simple: how can do the same (retrieve the variable names) within my own function?
If yes, same question for output arguments:
bar = foo(123);
can foo retrieves 'bar'?

 采纳的回答

Stephen23
Stephen23 2018-11-6

4 个评论

Thanks. It doesn't look like the dual outputname exists?
Correct, outputname does not exist.
inputname can be, and has been, way over-used. A little goes a long way. In particular, it is a really bad idea to get the names of your inputs and then overwrite them using evalin.
You may not have wanted to do that. But don't do that.
Never use it myself (thus the question), but I can see some circumstances I would want to use it:
  1. Put some more meaningful error message or log message
  2. Check if the input argument is from an expression of a variable, in the MEX file I might not bother to perform inplace change in the first case to save some memory or duplication.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Tables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by