Right hand side of an assignment into a table must be another table or a cell array.
    44 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
bias = table('Size',[1,11], 'VariableTypes', {'datetime', 'string', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'cell'}, 'VariableNames', ["time", "config", "ypos", "FA", "FN", "thrust", "CTA", "CTC", "VAB", "VBC", "pressure"]);
bias(1,4:10) = [1 2 3 4 5 6 7]; % throws error
bias(1,4) = 5; % Also throws error
both ways of assigning data into my table result in the error "Error using  ()  Right hand side of an assignment into a table must be another table or a cell array."
The data type for these field is all double, why can I not assign a value with row/column indexing in this way? particularly the second one?
I can do
bias.FA = 1;
bias.FN = 2;
% etc...
but is there a way to fill these columns in one line? particularly.. to fill adjacent columns in a table using an array?
1 commentaire
  Stephen23
      
      
 le 27 Oct 2023
				"The data type for these field is all double, why can I not assign a value with row/column indexing in this way?"
Because parentheses refers to the table array itself.
If you want to refer to the table content then use curly braces:
Réponse acceptée
Plus de réponses (2)
  KSSV
      
      
 le 27 Oct 2023
        
      Modifié(e) : KSSV
      
      
 le 27 Oct 2023
  
      bias = table('Size',[1,11], 'VariableTypes', {'datetime', 'string', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'cell'}, 'VariableNames', ["time", "config", "ypos", "FA", "FN", "thrust", "CTA", "CTC", "VAB", "VBC", "pressure"]);
val = 1:7 ; 
for i = 1:7
    bias.(i+3) = val(i) ;
end
OR
time = datetime ; 
config = {'Missing'} ; 
ypos = 0 ; 
FA = 1 ; 
FN = 2 ; 
thrust = 3 ; 
CTA = 4 ; 
CTC = 5 ; 
VAB = 6 ; 
VBC = 7 ; 
pressure = {100} ; 
bias = table(time,config,ypos,FA,FN,thrust,CTA,CTC,VAB,VBC,pressure)
0 commentaires
  Walter Roberson
      
      
 le 27 Oct 2023
        bias = table('Size',[1,11], 'VariableTypes', {'datetime', 'string', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'double', 'cell'}, 'VariableNames', ["time", "config", "ypos", "FA", "FN", "thrust", "CTA", "CTC", "VAB", "VBC", "pressure"]);
%version 1
bias(1,4:10) = num2cell([1 2 3 4 5 6 7]);
bias(1,4) = {5};
%version 2
bias{1,4:10} = [1 2 3 4 5 6 7];
bias{1,4} = 5;
bias
0 commentaires
Voir également
Catégories
				En savoir plus sur Tables dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




