我有矢量图
output = PV_out(:);
我试图将其分解为某种形式,例如 - output(K) 其中 output(1) 是前 8760 行,输出 (2) 是接下来的 8760 行等
上面的向量是一个 236520x1 向量,所以我试图获得 27 个“组”矩阵有谁知道该怎么做?
谢谢
我有矢量图
output = PV_out(:);
我试图将其分解为某种形式,例如 - output(K) 其中 output(1) 是前 8760 行,输出 (2) 是接下来的 8760 行等
上面的向量是一个 236520x1 向量,所以我试图获得 27 个“组”矩阵有谁知道该怎么做?
谢谢
这是重塑的工作:
%# old_output is 236520x1
%# desired is 8760 x 1 x 27 matrix
new_output = reshape(old_output,8760,1,[]);
size(new_output) %# [8760 1 27]
ans = [8760 1 27]
这将创建一个 8760x1x27 矩阵,其中每一行都是从给定的向量中按顺序获取的。请注意,如果您给它一个矩阵作为第一个输入参数(而不是一个向量) ,您应该小心:您应该确保您知道取值的顺序。(留空[]
意味着它将自动为该维度选择正确的大小。如果numel
输入的 不能被您指定的维度整除,您仍然会遇到错误。)
编辑:根据下面的评论更改尺寸。
长度 = 8760;
out = zeros(len,27);
对于 i=1:27 out(:,i) = output((i-1)*len + 1 : i*len); 结尾