Replacing elements of a matrix of those of a Cell Array

조회 수: 4 (최근 30일)
Hairband
Hairband 2021년 7월 4일
답변: Sulaymon Eshkabilov 2021년 7월 4일
i am trying to replace the elements of my 3D matrix with a for loop with elements of a cell array and i cant seem to find a solution that works.
Trying to replace the corosponding elements from the Cell Array to the those of the Matrix.
The matrix is a 2x10x38 but its dependent on the size of the Cell Array.
club = {'ARS','VIL','BRE','BRI','BUR','CHE','CRP','EVE','LEE','LEI','LIV','MNC',...
'MUN','NEW','NOR','STH','TOT','WAT','WHM','WOL'};
c_shuff = club(randperm(numel(club))); %randomises order of teams
t = numel(club); %Number of Teams
r = 2*t-2; %Number of Rounds
hA = [mod([reshape([2:t/2;t-1:-1:t/2+1],1,t-2) 1]...
+(-1:t-3)',t-1)+1, t*(ones(t-1,1))];
%matrix is generated to display every team play each other once
hB = flip(hA,2);
%matrix is flipped
sched = [hA;hB].';
%matrix containing all games of every team playing each opponent twice home and away
c = reshape(sched,2,t/2,r);
%matrix is added a dimention to show each game week on indevidual pages
%top row home team, second row away team
c = num2cell(c);
  댓글 수: 1
Yazan
Yazan 2021년 7월 4일
Why do not you transform the cell array into an ordinary array?

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

채택된 답변

Matt J
Matt J 2021년 7월 4일
편집: Matt J 2021년 7월 4일
Perhaps as follows?
club = {'ARS','VIL','BRE','BRI','BUR','CHE','CRP','EVE','LEE','LEI','LIV','MNC',...
'MUN','NEW','NOR','STH','TOT','WAT','WHM','WOL'} ;
c_shuff = club(randperm(numel(club))); %randomises order of teams
t = numel(club); %Number of Teams
r = 2*t-2; %Number of Rounds
hA = [mod([reshape([2:t/2;t-1:-1:t/2+1],1,t-2) 1]...
+(-1:t-3)',t-1)+1, t*(ones(t-1,1))];
%matrix is generated to display every team play each other once
hB = flip(hA,2);
%matrix is flipped
sched = [hA;hB].';
%matrix containing all games of every team playing each opponent twice home and away
c = reshape(c_shuff(sched),2,t/2,r)
c = 2×10×38 cell array
c(:,:,1) = {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'MUN'} c(:,:,2) = {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'MUN'} c(:,:,3) = {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'MUN'} c(:,:,4) = {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'MUN'} c(:,:,5) = {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'MUN'} c(:,:,6) = {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'MUN'} c(:,:,7) = {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'MUN'} c(:,:,8) = {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'MUN'} c(:,:,9) = {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'MUN'} c(:,:,10) = {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'MUN'} c(:,:,11) = {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'MUN'} c(:,:,12) = {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'MUN'} c(:,:,13) = {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'MUN'} c(:,:,14) = {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'MUN'} c(:,:,15) = {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'MUN'} c(:,:,16) = {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'MUN'} c(:,:,17) = {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MUN'} c(:,:,18) = {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'MUN'} c(:,:,19) = {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'MUN'} c(:,:,20) = {'MUN'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} c(:,:,21) = {'MUN'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} c(:,:,22) = {'MUN'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} c(:,:,23) = {'MUN'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} c(:,:,24) = {'MUN'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} c(:,:,25) = {'MUN'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} {'MNC'} c(:,:,26) = {'MUN'} {'CRP'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} {'BRI'} c(:,:,27) = {'MUN'} {'NEW'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} {'CHE'} c(:,:,28) = {'MUN'} {'EVE'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} {'BRE'} c(:,:,29) = {'MUN'} {'LEI'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} {'LIV'} c(:,:,30) = {'MUN'} {'LEE'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} {'ARS'} c(:,:,31) = {'MUN'} {'WAT'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} {'WOL'} c(:,:,32) = {'MUN'} {'VIL'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} {'BUR'} c(:,:,33) = {'MUN'} {'NOR'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} {'STH'} c(:,:,34) = {'MUN'} {'WHM'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} {'TOT'} c(:,:,35) = {'MUN'} {'MNC'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} {'CRP'} c(:,:,36) = {'MUN'} {'BRI'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} {'NEW'} c(:,:,37) = {'MUN'} {'CHE'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'} {'EVE'} c(:,:,38) = {'MUN'} {'BRE'} {'LIV'} {'ARS'} {'WOL'} {'BUR'} {'STH'} {'TOT'} {'CRP'} {'NEW'} {'EVE'} {'CHE'} {'BRI'} {'MNC'} {'WHM'} {'NOR'} {'VIL'} {'WAT'} {'LEE'} {'LEI'}

추가 답변 (1개)

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2021년 7월 4일
Use the logical indexing with:
find(ismember())

카테고리

Help CenterFile Exchange에서 Word games에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by