How to sum columns of multiple matrices?
    10 ビュー (過去 30 日間)
  
       古いコメントを表示
    
    Sashank Jammalamadaka
 2017 年 2 月 2 日
  
    
    
    
    
    コメント済み: Sashank Jammalamadaka
 2017 年 2 月 3 日
            I have 32 column matrices of different names to be added separately. Is it possible to write a loop to do it instead of writing Sum1 = sum(VarName2)... and so on for 32 matrices?
I have matrices named VarName2, VarName3, ..., VarName33. I tried using the following loop;
for i = 1:32
sum(i)= sum(VarName(i));
end
and it returned the error "Undefined function or variable 'VarName'". So, needed help with this.
採用された回答
  Niels
      
 2017 年 2 月 3 日
        
      編集済み: Niels
      
 2017 年 2 月 3 日
  
      final_sum=0;
for i= 1:32    % splitted command as string: sum(VarNamei)                          
    final_sum=final_sum + evalin('base', ['sum(VarName', num2str(i) ,')']);
end
the sum of all vectors (if sum is used on a matrix, the result will be a row vector) ...
just tell me if it works, i had no problem using it.
3 件のコメント
  Niels
      
 2017 年 2 月 3 日
				chnged the code so that final_sum is a 32x1 vector where final_sum(i) contains the sum of VarName2+...VarNamei
final_sum    = zeros(32,1);
final_sum(1) = VarName2;
for i= 3:33    % splitted command as string: sum(VarNamei)                          
    final_sum(i-1) = final_sum(i-2) + evalin('base', ['sum(VarName', num2str(i) ,')']);
end
その他の回答 (0 件)
参考
カテゴリ
				Help Center および File Exchange で Logical についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


