我在这样的结构中有来自实验的数据:
data.subject.trial
我需要找到所有参与者的试验分数的方法(例如,试验x的所有参与者的平均分数是多少?)。
我可以使用如下所示的for循环到达那里,但感觉应该有一个更简单的单行程来实现相同的事情(在这个例子中,“试验”中的值是数字)。有小费吗?非常感谢!
for i = 1:length(data.subject)
for j = 1:length(data.subject(i).trial)
a(i,j) = data.subject(i).trial(j);
end
end
trialMeans = mean(a);
答案 0 :(得分:1)
我想我偶然发现了自己问题的答案......
A = cell2mat({data.subject.trial}); % Put all scores from all trials into 1 vector
B = reshape(A,[],length(data.subject))'; % Reshape into rows of however many subjects there are
trialMeans = mean(B);
谢谢!