代码之家  ›  专栏  ›  技术社区  ›  Deepak Eevil Personified

如何在matlab中计算光线元素的平均值?

  •  -1
  • Deepak Eevil Personified  · 技术社区  · 7 年前

    我有个酒窖雷 A. 的维度 64x8 具有以下维度的元素,

    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double
    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double
    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double    520x1 double
    ...................
    

    现在我需要 平均值 跨越每列中的8行,这样我将只得到一行 520X1 每行单元格数。

    所以,在跨行应用平均值之后,我的输出应该是这样的,

    520x1 double
    520x1 double
    520x1 double
    520x1 double
    ............
    

    所以,我的输出将是从64x8转换而来的64x1单元阵列。

    我尝试使用以下命令执行此操作,

    平均值={平均值(cat(3,C{:}),3)}

    但是,它给 1X1 只有一个维度单元格的单元格数组 520X1 .

    请纠正我,并建议我是否有任何功能来处理此问题。如果我需要一个循环来完成这个任务,请告诉我?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Tommaso Belluzzo    7 年前
    % Create sample data...
    
    A = cell(64,8);
    
    for i = 1:64
        for j = 1:8
            A{i,j} = rand(520,1);
        end
    end
    
    % Calculate column-wise means...
    
    B = mean(cell2mat(A),2);
    
    % Reshape the result into a cell array...
    
    C = mat2cell(B,repmat(520,64,1),1);