Я предполагаю, что у вас есть 0 и 1 в массиве, и вы хотите как-то вывести их с заданной шириной столбца.Если это так, то reshape
обычно может делать то, что я считаю нужным, за исключением того, что ваши данные могут не делиться равномерно на ширину ваших столбцов, т. Е. 50. Одним из способов было бы сначаладополните данные так, чтобы они были, например,
data = 'abcdefghijklmnopqrstuvwxyz';
colwidth = 6;
% padding data to fit evenly in full rows
data = [data, repmat(' ', 1, colwidth-mod(numel(a), colwidth))];
% reshaping into columns of given width
reshape(data, colwidth, [])'
Это даст вам
5×6 char array
'abcdef'
'ghijkl'
'mnopqr'
'stuvwx'
'yz '
Или вы можете получить детали отдельно:
reshape(data(1:end-mod(numel(data), colwidth)), colwidth, [])'
data(end-mod(numel(data), colwidth)+1:end)
, давая вам
ans =
4×6 char array
'abcdef'
'ghijkl'
'mnopqr'
'stuvwx'
ans =
'yz'