在有条件的单元格中查找平均值



>我有以下内容:

a='abaacacbaa'    'abaaabaaaa'    'dcdcbbcccc'    'acaaaaabba'
v=[1x10 double]    [1x10 double]    [1x10 double]    [1x10 double]
v{1}=0.0064    0.4009   -0.0125   -0.0913    0.5707    0.0442    0.5210    0.3174   -0.2201    0.0570
letter={1x1 cell}    {1x1 cell}    {1x1 cell}    {1x1 cell}
letter{1}='a'

Here i=4 and j=10

我想为每个 i 找到 v 中条目的平均值,其中 a 中的相应条目等于字母 {i}。

使用如@Bill Cheatham 提到仅查找所选条目的平均值

等式:

   mean(v(a == 'a')) 

所以我尝试了:

  for k=1: 4
   for j=1: 10 
     M= mean(v{k}(char(a{k}(j))==char(letter{k})));
     Ms{k}=M;
    end
  end

还尝试使用

   a(:) and
    mat2cell(v)

所以结果应该是:Ms= [第 1 行的

平均值} {第 2 行的平均值} {第 3 行的平均值} {第 4 行的平均值}

把括号放在一起,使分隔在这里很明显

谢谢

正如Dan所建议的那样,离开j循环解决了问题

最新更新