我正在尝试这个:
weights = rand(64,1); % creates an array with 64 initial weights
weights(:,2) = rand(40,1); % creates an array with 40 initial weights
正如代码所解释的那样:用64个随机值填充第一个向量,然后对第二个向量执行相同操作并将它们放入同一个变量中。所以我很容易访问它们:
weights(:,1) % <-- will display entire first vector
weights(:,2) % <-- display entire second vector
答案 0 :(得分:2)
您无法执行此操作,因为第一次调用会创建一个size(64,1)
的矩阵。因此,所有列都必须包含64
行,而不是40
。
您可以使用单元格,例如
weights{1} = rand(64,1); % creates an array with 64 initial weights
weights{2} = rand(40,1); % creates an array with 40 initial weights
并像
一样使用它们weights{1}
weights{2}
但是,如果此解决方案对您有用,则取决于您要对数据执行的操作。
答案 1 :(得分:1)
使用像Nemesis这样的细胞的类似解决方案是结构,例如:
weights.a = rand(64,1);
weights.b = rand(40,1);
weights.a, % <-- will display entire first vector
weights.b, % <-- will display entire second vector
我个人认为Nemesis提到的细胞解决方案更有用,但我想这取决于你用它做什么。