How to check if a table exists?

31 次查看(过去 30 天)
The table, it exists, will be created by using the command "table". It has columns of both numerican values and strings.
How do I check if the table exists? I tried to use the command exist:
if ~exist(app.T1, 'class')
but it keeps complaining with the below error message:
Error using exist
The first input to exist must be a string scalar or character vector.

采纳的回答

Turlough Hughes
Turlough Hughes 2019-12-8
编辑:Turlough Hughes 2019-12-8
If you have a table assigned to the variable T, then I believe you just need to write:
if ~exist('T')==1
to check that it doesn't exist. The error was that you inputted the actual variable as opposed to a string/character vector representing the name of the variable.
  5 个评论
Walter Roberson
Walter Roberson 2019-12-9
My understanding of app designer is that unless you use dynamic properties, the name T1 will exist in app, but it might be empty. I suggest exploring with isfield() and isprop() and isempty()

请先登录,再进行评论。

更多回答(1 个)

dpb
dpb 2019-12-8
"...will be created by using the command "table"..."
So, there then has to be a variable name on the LHS of the table() statement; that variable name is what you put into the argument list for exist().
If your code creates it, how can it not exist...or is this a test first, create if not yet have done so kind of thing? That could make some sense but same caveat applies unless using the (ugh!) kludge of dynamic naming (and in the hope you don't even know what that is yet, I'm not going to explain it any further! :) ).
  1 个评论
Leon
Leon 2019-12-8
Thanks! This is in a GUI interface within app-designer. It is one of the buttons that users can click. In rare cases if a user clicks the button before a table is generated, the program needs to have an error message for them. It certainly can not always assume a table has existed.

请先登录,再进行评论。

标签

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by