- a string array
 - a cell array of character vectors
 
how to use categorical in uitable
    7 次查看(过去 30 天)
  
       显示 更早的评论
    
hi, I want to choose as value in a table field  'Fil' or 'Stat'
cat=categorical({'Fil';'Stat'});
name={'A','B'};
nrows=numel(name); 
VNAMES={'Draw';'Filt_Stat'};
VTYPES=[{'logical'},{cat}];
T=table('Size',[nrows,numel(VNAMES)],'VariableTypes',VTYPES,'VariableNames',VNAMES);    % empty t
T.Draw=repmat({true},nrows,1);
ct=cell(1, numel(name));
ct(:) = {cat{2}};
T.Filt_Stat=ct';
app.Portfolio_UITable.Data=T; 
i get this error:
Error using table
Specify variable types as a string array or a cell array of character
vectors, such as ["string", "datetime", "double"].
0 个评论
回答(1 个)
  Walter Roberson
      
      
 2024-10-6
        cat=categorical({'Fil';'Stat'});
That is categorical.
VTYPES=[{'logical'},{cat}];
That is a cell array that includes an element that is categorical.
T=table('Size',[nrows,numel(VNAMES)],'VariableTypes',VTYPES,'VariableNames',VNAMES);    % empty t
VTYPES is a cell array that includes an element that is categorical. The VariableTypes parameter must be one of:
The result of categorical({'Fil';'Stat'}) is categorical, not a character vector.
When you set the VariableTypes, you can set an entry to be "categorical" or 'categorical' but you cannot set the entry to be a categorical
2 个评论
  Walter Roberson
      
      
 2024-10-7
				The VariableTypes parameter cannot hold any information about the details of categoricals.
What you might be thinking of is uitable . uitable() can have a ColumnFormat property, an element of which can be a cell array of character vectors that list category entries.
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Partial Differential Equation Toolbox 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!