How do I swap section of cells within a column in a struct
4 次查看(过去 30 天)
显示 更早的评论
Hi
I have a 1x144 struct with 7 fields called Test. In one of these fields (Test.Name) I have a column of cells with names of electrodes. I want to swap two sections of these column. Both sections are 32x1 cells (MyData1 and MyData2). Can anyone advise how to do this? Going on other posts here I tried simply - Test(65:96).Name = Test(97:128).Name but get message (Expected one output from a curly brace or dot indexing expression, but there were 32 results). Tried other ways such as loops but no progress.
DataMat = in_bst_data(sFiles.ChannelFile);
Test = DataMat.Channel;
MyData1 = {Test(65:96).Name}'
MyData2 = {Test(97:128).Name}'
0 个评论
采纳的回答
Matt J
2020-8-15
That should work fine:
>> [Test(1:6).Name]=deal('dog','cat','fish','bird','horse','rat');
>> MyData1 = {Test(1:3).Name}', MyData2 = {Test(4:6).Name}'
MyData1 =
3×1 cell array
{'dog' }
{'cat' }
{'fish'}
MyData2 =
3×1 cell array
{'bird' }
{'horse'}
{'rat' }
3 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Structures 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!