我想创建一个目标向量。我遇到了一些问题。我想要的是从 T 到 Target 的 18 个对象的 3 的所有组合。但它无法产生这种组合。它单独适用于每个组合,但对我来说“for循环”似乎不起作用。
% T is a structure of 18 different sized objects
% idx is index of size 816*3 double
idx = combnk(1:18,3);
% TNames is cell of size 18*1
TNames = fieldnames(T);
for i = 1:length(idx)
Target(:,:,i) = [T.(TNames{idx(i,1)}) ;
T.(TNames{idx(i,2)}) ;
T.(TNames{idx(i,3)}) ];
end
当我从 Target(:,:,i) 中删除 (:,:,i) 并在 T.(TNames{idx( i,1)})..T.(TNames{idx(i,2)}) 和 T.(TNames{idx(i,3)})
我尝试了不同的替代方案,但我无法解决这个问题。我什至能够创建一个目标 <3*859 cell>,但神经网络不能接受它。神经网络需要 <1*859 cell> 才能正常工作。那么,有人可以帮我解决这个问题吗?
我也试过这个:
T 是一个 <1*1 结构>,其中我有 18 个 fints(金融时间序列)对象,每个对象有 859 行,并且列数不同(每个 fints 对象中的列从 1 到 4 列不等)..我已经转换了所有这些 fints 对象通过 fts2mat 命令到矩阵。
现在我有新的矩阵 <32*859 double> 在每列范围内都有可识别的 fints 对象。即我可以确定每列中的前四个条目属于第一个 fints 对象,接下来的 3 个条目属于第二个 fints 对象,依此类推。
我想在一个新矩阵中抓取 3 个 fints 对象(共 18 个)的所有组合(816 个组合),最终可以将其转换为 <859*1 cell> 或 <1*859 cell> (更准确地说) 将其提供给神经网络进行适当的训练......
这个任务必须通过索引来完成,因为 3 的每个组合都应该包含 3 个 fints 对象条目,每个 fints 对象都有不同的编号。的列。而且我每次都必须在我的 816 个组合中对每个 fints 对象的所有列进行装扮,并将这 3 个 fints 对象连接起来。获取每个 fints 对象的所有列并将其放在行中。
简而言之,我应该有 <1*859 cell> 其中有 3 个 fints 对象的 816 种不同组合(在我的 T 结构中),每个组合应该有 3 个 fints 对象,每个组合应该是 <1*859 单元格> 将其提供给神经网络进行适当的训练。由于NN不采用不同维度的单元格..
我提前谢谢你