Matlab 转置元胞数组中结构中的值

Matlab transpose values in a structure within a cell array

我成功地为我的数据创建了一个 n=85 的移动 window,并将 windows 放入元胞数组中:

n = 37886;
cell_array=cell(n,1);
a = 1:n;
for T=1:n-84
  M=a(T:T+84);
    tmpstruct=struct('M',M);
    cell_array{T}=tmpstruct;
end

但是,我需要转置 M,它是位于元胞数组结构内的 window 个值的数据。也就是说,我希望 window 值的向量不是 1x85,而是 85x1.

我试过用这个转置:

cell_array = cellfun(@transpose,cell_array,'UniformOutput',false);

但是这段代码对我不起作用。

任何关于如何转置我的 windows 的反馈都将不胜感激。我需要转置 252 个元胞数组,因此手动执行此操作是不可能的。

如果我明白了,那又怎样:

n = 37886;
cell_array=cell(n,1);
a = 1:n;
for T=1:n-84
  M=a(T:T+84);
    tmpstruct=struct('M',M'); % Modified line to transpose windows!
    cell_array{T}=tmpstruct;
end

如果您更喜欢命名函数:

n = 37886;
cell_array=cell(n,1);
a = 1:n;
for T=1:n-84
  M=a(T:T+84);
    tmpstruct=struct('M',transpose(M)); % Modified line to transpose windows!
    cell_array{T}=tmpstruct;
end