How to treat select elements from within multiple cells as a single vector

조회 수: 4 (최근 30일)
What is the proper syntax for this indexing?:
ContainerArray = cell(13,9);
[ContainerAray{:,:}] = deal(rand(1,6))
DesiredVector = sum(ContainerArray{2:end,1}(1,1))
That is, how to I extract the nth elements of the arrays contained in the first cell column, cell rows 2:end (or really any cell index), and treat those extracted nth elements as a single array/vector?
  댓글 수: 2
David Hill
David Hill 2022년 9월 26일
Why use a cell array if all entries are doubles?
Gabriel Stanley
Gabriel Stanley 2022년 9월 26일
Actual data isn't, was trying to quicky create some dummy data to help illustrate basic problem. Also, even if all array are of the same type, individual arrays could be different sizes as long as a known index (e.g. (1,1)) was guaranteed to exist.

댓글을 달려면 로그인하십시오.

채택된 답변

Jan
Jan 2022년 9월 26일
편집: Jan 2022년 9월 26일
C = cell(5, 4);
C(:) = {2:5}; % Faster than with DEAL
V = cellfun(@(x) x(1,1), C(2:end,1), 'UniformOutput', 1)
V = 4×1
2 2 2 2
V = sum(V)
V = 8
  댓글 수: 3
Gabriel Stanley
Gabriel Stanley 2022년 9월 26일
yeah, that. Sorry, running on very little sleep atm.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

제품


릴리스

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by