这感觉应该很简单。
我正在构建一个最小距离分类器,我想将 feature1 和 feature2 放入同一个矩阵中,这样我就可以调用它们并得到这样的答案。
featureVector(1,:) =
所有的feature1
价值观
featureVector(2,:) =
所有的feature2
价值观
我正在循环并希望featureVector
在循环运行时将这些值放入。
我对 MATLAB 很陌生,所以我不知道如何用语言表达。希望这有足够的意义。
谢谢大家。
如果您feature1
是水平向量,请执行以下操作:
featureVector = [ feature1 ; feature2 ]
否则(如果垂直),请执行以下操作:
featureVector = [ feature1 , feature2 ]
如果你不知道它的方向,你总是可以做一个reshape
:
feature1 = reshape(feature1, 1, numel(feature1))
...什么会使feature1
水平,或者:
feature1 = reshape(feature1, numel(feature1), 1)
...什么会使feature1
垂直。
reshape
像这样使用将从任何向量/矩阵生成水平/垂直向量,从原始源中逐一获取特定值。
编辑:证明它有效:
>> a = [1 ; 2 ; 3 ; 4 ; 5];
>> b = [6 ; 7 ; 8 ; 9 ; 10];
>> ab = [a, b]
ab =
1 6
2 7
3 8
4 9
5 10
>> ab(2,:)
ans =
2 7
编辑:如果您的feature1
andfeature2
是标量,并且您想featureVector
在每次迭代中将它们一一添加,请执行以下操作:
featureVector = []
for i = 1:...
feature1 = ...;
feature2 = ...;
featureVector = [featureVector; [feature1, feature2]];
end
你有没有想过使用这个?
results = [values1,values2];