下面是我的MATLAB代码:创建平均每列的,并把它插入到工作区
for t=1:5
data=[1 3 5 7 9;2 4 6 8 10];
k(t)=mean(data(:,t));
end
结果,K(1)= 1.5,K(2)= 3.5,...,K (5)= 9.5。 我想创建其中组合所有这些如示于下面的结果:
结果= [1.5; 3.5; 5.5; 7.5; 9.5]
不限好主意做??感谢。
下面是我的MATLAB代码:创建平均每列的,并把它插入到工作区
for t=1:5
data=[1 3 5 7 9;2 4 6 8 10];
k(t)=mean(data(:,t));
end
结果,K(1)= 1.5,K(2)= 3.5,...,K (5)= 9.5。 我想创建其中组合所有这些如示于下面的结果:
结果= [1.5; 3.5; 5.5; 7.5; 9.5]
不限好主意做??感谢。
data=[1 3 5 7 9;2 4 6 8 10];
R = mean(data)';
修订:
正如上面提到的,如果这个解决方案是不是你所期望的,我真的不知道你的要价。从你的头衔你提到'放入工作区'?这是否意味着您需要为'R'中的每个值创建一个变量?如果是这样,请尝试:
for i = 1:5
kk = R(i);
% eval(sprintf('k%d = kk', i)); % better to avoid eval use assignin instead
assignin('base',['K' sprintf('%d',i)],kk);
end
谢谢4您的答案,我知道如何使用转置,问题是我想知道如何存储它,如果必须在此代码中使用for循环。 –
你可以使用,
data = [1 3 5 7 9; 2 4 6 8 10];
k = mean(data); % k = [1.5, 3.5, 5.5, 7.5, 9.5];
% To get a column vector use:
k = mean(data)'; % k = [1.5; 3.5; 5.5; 7.5; 9.5];
检查的mean
的文档了解更多信息。
谢谢4您的答案,我知道如何使用转置,问题是我想知道如何存储它,如果必须在此代码中使用循环。 –
@TonyYEe你的问题不清楚。函数内部的'for'循环是什么?如果您想为每个值创建变量,请参阅编辑Kate的答案。根据您提供的结果'Result == k''。你能否提供一个更好的问题描述。 – mythealias
根据你对答案的评论,你不明白你的问题,或者你错误地解释了-1。 –