Sum of Cell Array [Besides for loop]
2 次查看(过去 30 天)
显示 更早的评论
I'm having difficulty trying to solve this problem. Suppose:
testvalue = {[1] [] []
[1] [1] [1]
[1] [] []
[1] [1] []}
I want to sum the contents of each row, which should give:
1+nil+nil=1
1+1+1=3
1+nil+nil=1
1+1+nil=1
I tried using for loop but it upon adding cumulative sum with [], the new sum becomes []. Can someone shed some light? Thanks.
0 个评论
采纳的回答
Walter Roberson
2013-4-15
T = testvalue;
T(cellfun(@isempty,T)) = {0};
sum( cell2mat(T), 2)
2 个评论
Eduardo Gil
2020-9-2
Brilliant. However, could Matlab be any more cumbersome when it comes to the simple stuff. A spreadsheet would have done this without any need for logic. On the other hand, Matlab is so powerful for other less mundane tasks.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Environment and Settings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!