我有一个单元格 A ,其尺寸是8的倍数。对于ex 1x192 ,现在我想以下列方式选择单元格数组的元素
1,9,17,25 ...第n个元素应存储在单独的单元格数组中。类似地, 2,10,18,26 ... n 在单独的单元阵列中,另一组在单独的单元阵列中为3,11,19,27。这必须持续到 8,16,24,32..n
如何自动执行此操作,其中单元格数组大小是动态的。但它始终是8的倍数。
感谢任何帮助
答案 0 :(得分:3)
最简单的事情是reshape
:由于单元格数组的长度始终可以被8整除,因此可以将其重新整形为8行高。然后每一行都是一个独立的单元格数组:
>> c = num2cell(1:192);
>> c8 = reshape(c(:), 8, [])
c8 =
8x24 cell array
Columns 1 through 9
{[1]} {[ 9]} {[17]} {[25]} {[33]} {[41]} {[49]} {[57]} {[65]}
{[2]} {[10]} {[18]} {[26]} {[34]} {[42]} {[50]} {[58]} {[66]}
{[3]} {[11]} {[19]} {[27]} {[35]} {[43]} {[51]} {[59]} {[67]}
{[4]} {[12]} {[20]} {[28]} {[36]} {[44]} {[52]} {[60]} {[68]}
{[5]} {[13]} {[21]} {[29]} {[37]} {[45]} {[53]} {[61]} {[69]}
{[6]} {[14]} {[22]} {[30]} {[38]} {[46]} {[54]} {[62]} {[70]}
{[7]} {[15]} {[23]} {[31]} {[39]} {[47]} {[55]} {[63]} {[71]}
{[8]} {[16]} {[24]} {[32]} {[40]} {[48]} {[56]} {[64]} {[72]}
Columns 10 through 18
{[73]} {[81]} {[89]} {[ 97]} {[105]} {[113]} {[121]} {[129]} {[137]}
{[74]} {[82]} {[90]} {[ 98]} {[106]} {[114]} {[122]} {[130]} {[138]}
{[75]} {[83]} {[91]} {[ 99]} {[107]} {[115]} {[123]} {[131]} {[139]}
{[76]} {[84]} {[92]} {[100]} {[108]} {[116]} {[124]} {[132]} {[140]}
{[77]} {[85]} {[93]} {[101]} {[109]} {[117]} {[125]} {[133]} {[141]}
{[78]} {[86]} {[94]} {[102]} {[110]} {[118]} {[126]} {[134]} {[142]}
{[79]} {[87]} {[95]} {[103]} {[111]} {[119]} {[127]} {[135]} {[143]}
{[80]} {[88]} {[96]} {[104]} {[112]} {[120]} {[128]} {[136]} {[144]}
Columns 19 through 24
{[145]} {[153]} {[161]} {[169]} {[177]} {[185]}
{[146]} {[154]} {[162]} {[170]} {[178]} {[186]}
{[147]} {[155]} {[163]} {[171]} {[179]} {[187]}
{[148]} {[156]} {[164]} {[172]} {[180]} {[188]}
{[149]} {[157]} {[165]} {[173]} {[181]} {[189]}
{[150]} {[158]} {[166]} {[174]} {[182]} {[190]}
{[151]} {[159]} {[167]} {[175]} {[183]} {[191]}
{[152]} {[160]} {[168]} {[176]} {[184]} {[192]}
>> c8(4,:)
ans =
1x24 cell array
Columns 1 through 9
{[4]} {[12]} {[20]} {[28]} {[36]} {[44]} {[52]} {[60]} {[68]}
Columns 10 through 18
{[76]} {[84]} {[92]} {[100]} {[108]} {[116]} {[124]} {[132]} {[140]}
Columns 19 through 24
{[148]} {[156]} {[164]} {[172]} {[180]} {[188]}